Sqlserver中如何快速寫入千萬級測試數據

數據庫結構:

id int()

username   nvarchar(50)

password   nvarchar(50)

addtime   datetime

token    nvarchar(50)

roleid   int

一、程序中寫for循環,實測一分鐘寫入數據17998條

二、直接在在數據庫執行語句,每分鐘179094條,速度快10倍

DECLARE @i int
SET @i = 1
WHILE (@i <=10000000)
BEGIN
INSERT INTO A_User(username,password,addtime,token,roleid)
VALUES('manage6'+CONVERT( CHAR(12), cast(ceiling(rand() * @i*10) as int) ),CONVERT( CHAR(12), cast(ceiling(rand() * @i) as int) ),'2016-11-08 05:01:40',CONVERT( CHAR(14), cast(ceiling(rand() * @i*100) as int) ),cast(ceiling(rand() * 6) as int))
SET @i = @i + 1
END
GO

對於寫入千萬級數據,即使上面第二種方法也需要10000000/179094=55.55分鐘,不知道還有沒有更快的方法

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章