【sqlserver】sqlserver表中导入大批量数据


背景:

想要往sqlserver数据库中导入大批量数据,使得数据库的备份文件大于几个G。

 注意: 导入的数据不能太规范,数据表最好不一致,否则会自动压缩。

 

解决办法:

1)通过excel导入,可以参考另一个帖子。但是经常会很卡。

2)通过循环脚本自动insert。

 

下面我们来说说第2个方法。

先创建表,列为:( id,v1,v2,v3,v4,v5,v6,v7,v8,v9,v10),每列的数据类型为bigint(为了占更大的空间)

通过自动化命令循环写入,生成随机数插入到表中。命令如下:

USE [qa_db_1]
GO

use qa_db_1

Declare @Cnt int=0
Declare @Total int=100000000

WHILE @Cnt<@Total

Begin

insert into [dbo].[t4](id, v1, v2, v3, v4, v5, v6, v7, v8, v9, v10) 
values (@Cnt, 
    floor(rand()*10), 
	floor(rand()*20), 
	floor(rand()*30),
	floor(rand()*40),
	floor(rand()*50),
	floor(rand()*60),
	floor(rand()*70),
	floor(rand()*80),
	floor(rand()*90),
	floor(rand()*100)
	)

Set @Cnt=@Cnt+1
END

 

插入数据后的结果如下:

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM