【发布时间】:2013-03-23 18:23:11
【问题描述】:
我有一张或多或少有点像的桌子
Name | Lastname | ID | Date
如果Name、Lastname 和ID 这样的人已经存在而不运行其他查询来搜索他,有没有办法阻止数据库运行插入函数?
【问题讨论】:
我有一张或多或少有点像的桌子
Name | Lastname | ID | Date
如果Name、Lastname 和ID 这样的人已经存在而不运行其他查询来搜索他,有没有办法阻止数据库运行插入函数?
【问题讨论】:
在列上添加UNIQUE 约束,
ALTER TABLE TableName ADD CONSTRAINT tb_uq UNIQUE (ID, LastName)
一旦实现,如果你尝试插入一个ID和LastName已经存在的值,它会抛出一个异常。例子
INSERT INTO tableName (ID, LASTNAME) VALUES (1, 'hello') // ok
INSERT INTO tableName (ID, LASTNAME) VALUES (2, 'hello') // ok
INSERT INTO tableName (ID, LASTNAME) VALUES (1, 'hello') // failed
【讨论】:
:)