SQLServer------如何快速插入幾萬條測試數據


方法一:

1.建表

if OBJECT_ID('test') is not null  drop table test 
go
create table test
(id int identity(1,1),vid int ,v varchar(600),
constraint pk_test_id primary key (id))
go

2.第一次插入數據

insert into test(vid,v)
select 1,REPLICATE('a',600) union all
select 2,REPLICATE('b',600) union all
select 3,REPLICATE('c',600) union all
select 4,REPLICATE('d',600) union all
select 5,REPLICATE('e',600) union all
select 6,REPLICATE('f',600) union all
select 7,REPLICATE('g',600) union all
select 8,REPLICATE('h',600) union all
select 9,REPLICATE('i',600) union all
select 10,REPLICATE('j',600)
go

3.第二次插入數據

begin tran  
    insert into test(vid,v)  
    select vid,v  
    from test  
commit  tran
go 18 

 

方法二:

1.建表

學生表:
CREATE TABLE [dbo].[Student](
    [StudentID] [int] IDENTITY(1,1) NOT NULL,  --主鍵
    [Number] [varchar](15) NULL,   --學號
    [Name] [nchar](8) NULL,  --學生姓名
    [ClassID] [int] NOT NULL  --學生所在班級ID
)

2.插入數據

插入學生數據:
declare @count int =1;
while @count < 100
begin
insert into Student select @count,'學生'+ convert(varchar,@count,15),cast(ceiling(rand() * 5) as int)
set @count = @count + 1; 
end

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM