用一条SQL语句实现向数据库中插入多条记录的方法

[size=large][b][color=darkred]用一条SQL语句实现向数据库中插入多条记录的方法[/color][/b][/size]

insert一般是用来给表插入一条指定的列值的,但是,insert还存在另一种形式,可以利用它将一条select语句的结果插入表中。这就是所谓的insert select,顾名思义,它是由一条insert语句和一条select语句组成的。假如你从另一张表中合并客户列表到你的Custumers表,不需要每次读取一行,然后再将它用insert插入,可以如下进行:

insert into Custumer(cust_id,
cust_cintact,
cust_name,
cust_email,
cust_address,
cust_country)

select cust_id,
cust_cintact,
cust_name,
cust_email,
cust_address,
cust_country
from CustNew;

[color=green][b]分析:[/b][/color]
这个例子使用insert select从CustNew中将所有的数据导入Custumer。select语句从CustNew检索出要插入的值,而不是列出它们,select中列出的每个列对应于Custumer表明后所跟的列表中的每个列。这条语句检查露多少行有赖于CustNew表中有多少行。如果这个表为空,则没有行配插入(也不产生错误,因为操作仍然是合法的)。

[color=green][b]注意:[/b][/color]
insert select中的列名为简单起见,这个例子在insert和select语句中使用了相同的列名,但是,不一定要求列名匹配。事实上,DBMS甚至不关心select返回的列名,它使用的是列的位置。因此,select中的第一列(不管其列名)将用来填充表列中的指定的第一个列,第二列将用来填充表列中指定的第二个列,如此等等。
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值