--建表
表名tb 字段id 必须是char型
CREATE TABLE tb(id char(8))
--创建用于自动过滤重复值的唯一索引 表名tb 字段id
CREATE UNIQUE INDEX IX_tb ON tb(id)
WITH IGNORE_DUP_KEY GO
--插入随机数据
SET NOCOUNT ON
DECLARE @row int
SET @row = 1000000 -- 设置总记录数 1000000
WHILE @row >0
BEGIN
--显示提示信息, 表示还需要插入多行数据
RAISERROR('need %d rows', 10, 1, @row) WITH NOWAIT
--插入随机的位编码数据
SET ROWCOUNT @row
--插入方法A 随机数字
INSERT tb SELECT id = RIGHT(100000000(最好是比记录数大,相等也可以) + CONVERT(bigint, ABS(CHECKSUM(NEWID()))), 8(8位数))
--插入方法B 随机字母加数字
INSERT tb SELECT id = RIGHT(REPLACE(NEWID(), '-', ''),8(8位数))
FROM syscolumns c1,syscolumns c2
SET @row = @row - @@ROWCOUNT
END
注意:生成的随机数其实是0,1,2.。。的概率是相同的,所以0开头的跟与1开头的数据数量基本相同,所以建议多生成10%的数据,去除掉以0开头的数据