1. 程式人生 > >Sqlserver中如何快速寫入千萬級測試資料

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分鐘,不知道還有沒有更快的方法