避免将特定值插入 sql table

Avoid inserting a particular value into sql table

我不确定这是否可以在 SQL 中实现。

INSERT INTO table_name (column1, column2, column3) 
VALUES (value1, value2, 999);

如果用户试图在 column3 中插入​​ 999,将其转换为 null 或避免插入。

我正在尝试寻找是否可以从 SQL 服务器端找到任何解决方案。

插入语句中的 999 不能大小写。这真的取决于实施。这严格在数据库中吗?它是用 java/python/scala 库调用的吗?在数据库中,我会推荐以下内容:

set @value1 = val1;
set @value2 = val2;
set @value3 = if(val3=999,NULL,val3);

INSERT INTO table_name (column1, column2, column3) 
VALUES (@value1, @value2, @value3);

如果在数据库之外,只需使用相同的逻辑。

如何使用检查约束:

ALTER TABLE table_name
ADD CHECK (column3<>999);