如何避免在MySQL中插入重复的行?
为了避免在MySQL中插入重复的行,可以使用UNIQUE()。语法如下-
ALTER TABLE yourTableName ADD UNIQUE(yourColumnName1,yourColumnName2,...N);
为了理解上述语法,让我们创建一个表。
创建表的查询如下-
mysql> create table avoidInsertingDuplicateRows -> ( -> Id int NOT NULL AUTO_INCREMENT PRIMARY KEY, -> FirstValue int, -> SecondValue int -> );
现在使用desc命令检查表的描述。
查询如下-
mysql> desc avoidInsertingDuplicateRows;
示例以下是输出-
+-------------+---------+------+-----+---------+----------------+ | Field | Type | Null | Key | Default | Extra | +-------------+---------+------+-----+---------+----------------+ | Id | int(11) | NO | PRI | NULL | auto_increment | | FirstValue | int(11) | YES | | NULL | | | SecondValue | int(11) | YES | | NULL | | +-------------+---------+------+-----+---------+----------------+ 3 rows in set (0.00 sec)
这是避免在MySQL中插入重复行的查询。我们将使用insert命令设置它以在表中插入记录-
mysql> insert into avoidInsertingDuplicateRows(FirstValue,SecondValue) values(10,20); mysql> insert into avoidInsertingDuplicateRows(FirstValue,SecondValue) values(10,20); ERROR 1062 (23000): Duplicate entry '10-20' for key 'FirstValue'
使用select语句显示表中的所有记录。
查询如下-
mysql> select *from avoidInsertingDuplicateRows;
这是输出-
+----+------------+-------------+ | Id | FirstValue | SecondValue | +----+------------+-------------+ | 1 | 10 | 20 | +----+------------+-------------+ 1 row in set (0.00 sec)
热门推荐
10 朋友新年祝福语大全 简短
11 新年祝福语简短大方兔年
12 搬新家礼物祝福语简短
13 同学见面花束祝福语简短
14 五一假期祝福语幽默简短
15 离职欢送敬酒祝福语简短
16 对学弟的祝福语简短
17 考老师辞职祝福语简短
18 祝福语驱散霉运的话简短