作者grence (多想两分钟 = =")
看板Database
标题Re: [SQL ] 如何不要insert重复的?
时间Thu Feb 17 00:26:38 2011
※ 引述《zeqw (friend)》之铭言:
: 问题1:
: 如果有栏位 key,a,b,c
: 我在insert的时候只去insert a,b,c
: key为自动增加的PK
: 请问我要怎麽利用简单的SQL语法做到当a,b,c重复时
: 会产生insert失败的讯息或者不要去做insert呢
: 补充:
: 我key栏位是 INTEGER PRIMARY KEY AUTOINCREMENT,其他栏位就一般的INTEGER
: 然後是希望当insert时 如果a,b,c,都一样的时候,已经insert过了,
: 就不要insert,或是让它有错误也好
: 问题2:
: 或者有没有办法利用简单的SQL语法
: 可以删除掉整个table中,a,b,c重复的资料呢?
: 如果重复两三次,把重复地从後面删掉,留下一笔就好
你没附DBMS,推文有人提到 MYSQL,那就假设是吧
问题一
正确的名词是 unique index,至於怎麽设定,你可以 google一下
然後 mysql+unique index,想到一些不那麽相关的东西
INSERT ... ON DUPLICATE KEY UPDATE
http://dev.mysql.com/doc/refman/5.0/en/insert-on-duplicate.html
可能会有用
问题二
有人回你 SQL了
--
虽然这两个问题大部分 DBMS都能解,但是发文前先看版规应该不花多少时间。
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 180.176.88.194