我无法找到任何解决方案,所以我请求你们帮忙。
如何扩展此声明以便先前完成重复检查:
"INSERT INTO sample_table(str_col,num_col) VALUES('Ford', 100)"
非常感谢!
答案 0 :(得分:0)
在需要包含唯一值的列上创建UNIQUE索引。如果str_col中的值应该是唯一的,则需要对此列进行约束。
ALTER TABLE sample_table ADD CONSTRAINT unique_c UNIQUE(str_col)
如果两列的组合需要是唯一的,例如(Ford,100),(Ford,101)你应该添加
ALTER TABLE sample_table ADD CONSTRAINT unique_c UNIQUE(str_col, numb_col)
当您将重复的值插入表中时,会抛出异常。
如果要避免异常,请使用MERGE语句插入。
MERGE INTO sample_table USING VALUES('Ford', 100)
WHEN NOT MATCHED THEN INSERT VALUES('Ford', 100)