SQL INSERT INTO 语句
INSERT INTO 语句用于向表中插入新记录
SQL INSERT INTO 语法
INSERT INTO 语句可以有两种编写形式。
第一种形式无需指定要插入数据的列名,只需提供被插入的值即可:
INSERT INTO table_name
VALUES (value1,value2,value3,...);
第二种形式需要指定列名及被插入的值:
INSERT INTO table_name (column1,column2,column3,...)
VALUES (value1,value2,value3,...);
演示数据
下面是选自 "Websites" 表的数据:
id name url alexa country
1 Google https://www.google.cn/ 1 USA
2 淘宝 https://www.taobao.com/ 13 CN
3 菜鸟教程 http://www.runoob.com/ 4689 CN
4 微博 http://weibo.com/ 20 CN
5 Facebook https://www.facebook.com/ 3 USA
INSERT INTO 实例
假设我们要向 "Websites" 表中插入一个新行。
我们可以使用下面的 SQL 语句:
命令:
INSERT INTO Websites (name,
url,
alexa,
country)
VALUES ('百度',
'https://www.baidu.com/',
'4',
'CN');
返回:
id name url alexa country
1 Google https://www.google.cn/ 1 USA
2 淘宝 https://www.taobao.com/ 13 CN
3 菜鸟教程 http://www.runoob.com/ 4689 CN
4 微博 http://weibo.com/ 20 CN
5 Facebook https://www.facebook.com/ 3 USA
6 百度 https://www.baidu.com/ 4 CN
(id 字段会自动更新)
在指定的列插入数据
我们也可以在指定的列插入数据。
下面的 SQL 语句将插入一个新行,但是只在 "name"、"url" 和 "country" 列插入数据(id 字段会自动更新):
命令:
INSERT INTO Websites (name, url, country)
VALUES ('stackoverflow',
'http://stackoverflow.com/',
'IND');
返回:
id name url alexa country
1 Google https://www.google.cn/ 1 USA
2 淘宝 https://www.taobao.com/ 13 CN
3 菜鸟教程 http://www.runoob.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
没有指定要插入数据的列名的形式需要列出插入行的每一列数据:
INSERT INTO table_name
VALUES (value1,value2,value3,...);
insert into select 和select into from 的区别
insert into scorebak select *
from socre where neza='neza' ;
--插入一行,要求表scorebak 必须存在
select * into scorebak
from score
where neza='neza';
--也是插入一行,要求表scorebak 不存在

