sql中一次性插入多行数据的方法汇总

本文介绍使用SQL进行批量数据插入的方法,包括通过循环插入多条记录及使用union all简化插入过程。此外还展示了如何从现有表中复制数据创建新表。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

下面均以数据库testdb和表testtb为例

 
use master
    if exists (select * from sysdatabases where name='testdb')
       drop database testdb
    go
   create database testdb
    go
    use testdb
    if exists (select * from sysobjects where name='testtb')
      drop table testtb
    go
    create table testtb(tid int,tvalue int)
   go



I.下面是用sql编程一次性插入多条语句的完整实例:

declare @a int, @b int
set @a=1
set @b=20

while @a<=20
begin
insert into testtb(tid,tvalue)values(@a,@b)
set @a=@a+1
set @b=@b-1
end

select * from testtb
go

II.
使用insert into 表名(字段列表) select 值列表 union all select 值列表的语句格式:
 

   insert into testtb(tid,tvalue)
   select   94,100  Union all 
   select  72,12
   go 
 
III.
   1》.从存在的表复制数据到新表(与旧表表结构相同的表):
   
create table newtb(nid int,nvalue int ) go
     INSERT INTO newtb (nid, nvalue) SELECT tid,tvalue FROM testtb
   
2》.从存在的表复制数据到新表(新表不存在):

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值