我有一个小桌子,可以跟踪特定文件夹中保存的图片数量。我想知道SQL中有什么东西可以让我设置最大数值限制吗?我只希望名为 photocount 的特定列的最大值为4,000。 每次上传新照片时, photocount 会增加+1,我希望它允许最大值为4,000,并且我已经拥有创建新文件夹的代码,一旦达到4,000 。这就是我到目前为止设置表格的方式......
CREATE TABLE [dbo].[photocheck]
(
[photocheckId] INT NOT NULL PRIMARY KEY IDENTITY,
[directoryname] VARCHAR(50) NOT NULL,
[photocount] INT NOT NULL
)
答案 0 :(得分:2)
根据我的理解,一旦文件夹中包含4000
张照片。切换到新文件夹并将照片计数重置为0.您可以向表结构添加约束以避免超过4000的值。但是,为了避免不必要的异常,请更好地检查新插入时的新照片计数值。
这里是不需要的约束:
CREATE TABLE #photocheck
(
[photocheckId] INT NOT NULL PRIMARY KEY IDENTITY,
[directoryname] VARCHAR(50) NOT NULL,
[photocount] INT NOT NULL,
CONSTRAINT CheckRegNumber CHECK (photocheckId <= 4000)
)
有意义: 插入时使用条件。
IF(@photocount <= 4000) BEGIN --Insert new row. END ELSE --Warn with count exceeds 4000. BEGIN END