SQL命令INSERT,INSERT语句在表中添加一条记录。该命令的语法如下:
INSERT INTO table_name(field1, field2)VALUES('a', 'b');
例如,使用下面的命令可将新记录插入到小部件表中:
MariaDB [myapp]> INSERT INTO widgets(id, name)VALUES(1, "widget A"); Query OK, 1 row affected(0.01 sec)
这个命令在小部件表中添加一个新的记录,其中id列是整数值“1”,名称列是字符串“widget A”。
前面的练习把id列定义为AUTO_INCREMENT,所以MariaDB给插入的下一行自动提供一个唯一的递增id。
因此,添加一行时,甚至不需要指定id字段:
MariaDB [myapp]> INSERT INTO widgets(name)VALUES("widget B"); Query OK, 1 row affected(0.01 sec)
这个SQL语句在小部件表中添加一个新记录,其中名称列是字符串“widget B”。MariaDB会自动给id字段分配值“2”。
id列定义为PRIMARY KEY,这意味着该列中的每个值都必须是唯一的。
如果创建的新行与前一行有相同的ID, MariaDB就返回一个错误:
MariaDB [myapp]> INSERT INTO widgets(id, name)VALUES(2, "widget C"); ERROR 1062(23000): Duplicate entry '2' for key 'PRIMARY'