300字范文,内容丰富有趣,生活中的好帮手!
300字范文 > SQL SERVER存储过程批量插入数据库表数据

SQL SERVER存储过程批量插入数据库表数据

时间:2021-06-07 22:43:41

相关推荐

SQL SERVER存储过程批量插入数据库表数据

在做数据库系统开发时,特别是需要对数据库操作进行性能测试及优化时,我们就需要在数据库测试表中插入大量数据以便测试。对于这些数据的插入,这里通过实例展示如何通过存储过程进行实现。

数据库表(userInfo)结构如下:

CREATETABLE[dbo].[userInfo](

[userID][int]IDENTITY(1,1)NOTNULL,

[roleType][int]NULL,

[groupID][int]NULL,

[userCode][varchar](50)COLLATEChinese_PRC_CI_ASNULL,

[userName][varchar](50)COLLATEChinese_PRC_CI_ASNULL,

[text1][varchar](50)COLLATEChinese_PRC_CI_ASNULL,

[text2][varchar](50)COLLATEChinese_PRC_CI_ASNULL,

[text3][varchar](50)COLLATEChinese_PRC_CI_ASNULL

)ON[PRIMARY]

GO

存储过程如下(这里是批量插入99000条数据,roleType,groupID两个字段为随机生成的0-5之间的数):

CREATEPROCEDUREadd_UserInfo

AS

DECLARE@userCodeVARCHAR(30)

DECLARE@userNameVARCHAR(30)

DECLARE@userCode_baseVARCHAR(30)

DECLARE@countINTEGER

DECLARE@indexINTEGER

DECLARE@rand1INTEGER

DECLARE@rand2INTEGER

SET@userCode_base='qs_'

SET@userName='userName'

SET@count=100000

SET@index=10000

WHILE@index<@count

BEGIN

SET@userCode=@userCode_base+CONVERT(VARCHAR,@index)

SET@rand1=convert(int,rand()*5)

SET@rand2=convert(int,rand()*5)

INSERTINTOuserInfo(userCode,roleType,groupID,userName,text1,text2,text3)

VALUES(@userCode,@rand1,@rand2,@userName,'aokeikaoljof','','aokeikaoljof')

SET@index=@index+1

END

GO

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。