mssql sqlserver sql脚本一次向数据表插入多条记录的五种方法分享


摘要:
下文讲述使用sql脚本一次向数据表中插入多条记录的方法分享,如下所示 :
实验环境:sql server 2008 R2


在sqlserver,使用脚本插入数据的方法有多种,下文列举六种方法,分享给大家使用
例:

    CREATE TABLE [dbo].[maomao365.com] 
      (keyId int, info varchar(300) )
    go

   ---方法1:使用逗号分隔符,对数据进行多条插入,每条数据之间使用逗号分隔符
   INSERT INTO [dbo].[maomao365.com] ([keyId],[info])
   VALUES 
    (88,'sqlblog'),
    (99,N'sql爱好者'),
    (188,N'sql其它事项')
   GO
    ----方法2:将插入记录生成一张临时表, 然后插入至目标数据表
    INSERT INTO [dbo].[maomao365.com] ([keyId],[info])
    SELECT [keyId],[info] FROM (
    VALUES
        (88,'sqlblog'),
        (99,N'sql爱好者'),
        (188,N'sql其它事项')
    ) AS Tmp([keyId],[info])

   go

 ---方法3:采用EXECUTE运行select插入数据至表中
    INSERT  into [dbo].[maomao365.com] ([keyId],[info])
      EXECUTE ('SELECT 88,''sqlblog''
          SELECT 99,N''sql爱好者''
          SELECT 188,N''sql其它事项''
         )
     GO
  ----方法4:采用多条insert into 语句一起运行
    INSERT  into [dbo].[maomao365.com] ([keyId],[info])
      VALUES (88,'sqlblog')
    
    INSERT  into [dbo].[maomao365.com] ([keyId],[info])
      VALUES (99,N'sql爱好者')
   
    INSERT  into [dbo].[maomao365.com] ([keyId],[info])
      VALUES (188,N'sql其它事项')
     GO
---方法5:使用union all 组合数据,然后插入至数据表中
   insert INTO [dbo].[maomao365.com] ([keyId],[info])
        SELECT 88,'sqlblog'
           UNION all
        SELECT 99,N'sql爱好者'
           UNION all 
        SELECT 188,N'sql其它事项'
      GO

   truncate table  [maomao365.com] 
   drop       table [maomao365.com]