SQL INSERT 语句
INSERT INTO 语句用于向数据库的表中插入新记录。
1. INSERT 语法
INSERT 语句可以有两种编写形式。
1) 不指定要插入数据的列名,只需提供被插入的值
INSERT INTO table_name
VALUES (value1,value2,value3,...);
VALUES (value1,value2,value3,...);
2) 指定列名及被插入的值
INSERT INTO table_name (column1,column2,column3,...)
VALUES (value1,value2,value3,...);
VALUES (value1,value2,value3,...);
样本数据库
在本教程中,我们将使用 CodeBaoku 样本数据库。
下面是选自 "Websites" 表的数据:
SELECT * FROM Websites; +----+--------------+---------------------------+-------+---------+ | id | name | url | alexa | country | +----+--------------+---------------------------+-------+---------+ | 1 | Google | https://www.google.cm/ | 1 | USA | | 2 | 淘宝 | https://www.taobao.com/ | 13 | CN | | 3 | 编程宝库 | http://www.codebaoku.com/ | 4689 | CN | | 4 | 微博 | http://weibo.com/ | 20 | CN | | 5 | Facebook | https://www.facebook.com/ | 3 | USA | +----+--------------+---------------------------+-------+---------+
2. INSERT 范例
假设我们要向 "Websites" 表中插入一个新行。
1) 不指定列插入数据
我们可以使用下面的 SQL 语句:
INSERT INTO Websites (name, url, alexa, country) VALUES ('百度','https://www.baidu.com/','4','CN'); 执行以上 SQL,再读取 "Websites" 表,数据如下所示: SELECT * FROM Websites; +----+--------------+---------------------------+-------+---------+ | id | name | url | alexa | country | +----+--------------+---------------------------+-------+---------+ | 1 | Google | https://www.google.cm/ | 1 | USA | | 2 | 淘宝 | https://www.taobao.com/ | 13 | CN | | 3 | 编程宝库 | http://www.codebaoku.com/ | 4689 | CN | | 4 | 微博 | http://weibo.com/ | 20 | CN | | 5 | Facebook | https://www.facebook.com/ | 3 | USA | | 6 | 百度 | https://www.baidu.com/ | 4 | CN | +----+--------------+---------------------------+-------+---------+
2) 在指定的列插入数据
我们也可以在指定的列插入数据。
下面的 SQL 语句将插入一个新行,但是只在 "name"、"url" 和 "country" 列插入数据(id 字段会自动更新):
INSERT INTO Websites (name, url, country) VALUES ('stackoverflow', 'http://stackoverflow.com/', 'IND'); 执行以上 SQL,再读取 "Websites" 表,数据如下所示: SELECT * FROM Websites; +----+--------------+---------------------------+-------+---------+ | id | name | url | alexa | country | +----+--------------+---------------------------+-------+---------+ | 1 | Google | https://www.google.cm/ | 1 | USA | | 2 | 淘宝 | https://www.taobao.com/ | 13 | CN | | 3 | 编程宝库 | http://www.codebaoku.com/ | 4689 | CN | | 4 | 微博 | http://weibo.com/ | 20 | CN | | 5 | Facebook | https://www.facebook.com/ | 3 | USA | | 6 | 百度 | https://www.baidu.com/ | 4 | CN | | 7 | stackoverflow| http://stackoverflow.com/ | 0 | IND | +----+--------------+---------------------------+-------+---------+
UPDATE 语句用于更新数据库表中已存在的记录。SQL UPDATE 语法:UPDATE table_name SET column1=value1,column2=value2,... WHERE some_column=some_value。