CHill60
Этот скрипт создаст базу данных под названием "The1000" и 1001 таблицу с именами T1, T2, T3 ... T1000 содержит 1000 идентичных записей каждая, плюс таблица под названием "трек" - содержимое которой должно быть около 2092 строк.
use master
IF EXISTS(select * from sys.databases where name='The1000')
DROP DATABASE The1000
GO
CREATE DATABASE The1000
GO
use The1000
CREATE TABLE track (id int identity(1,1), dat nvarchar(255))
GO
SET NOCOUNT ON;
DECLARE @maxlength int = 30
DECLARE @minlength int = 2
INSERT INTO track
SELECT
(
select top (abs(checksum(newid())) % (@maxlength-@minlength) + @minlength) char(abs(checksum(newid())) % 26 + ascii('A'))
from sys.all_objects a1
where sign(a1.object_id) = sign(t.object_id) /* Meaningless thing to force correlation */
for xml path('')
) as NewRandomString
FROM sys.all_objects t;
-- Random text generator from Rob Farley - http://stackoverflow.com/questions/2152204/tsql-pseudo-random-text-generator
DECLARE @start int = 1
DECLARE @end int = 1000 -- Change this to the number of tables you want
WHILE @start <= @end
BEGIN
declare @sql nvarchar(max) = 'CREATE TABLE T' + CAST(@start AS NVARCHAR)
set @sql += '( ID INT, DAT NVARCHAR(255)) '
set @sql += 'INSERT INTO T' + CAST(@start AS NVARCHAR) + ' SELECT TOP 1000 * FROM track'
EXEC sp_executeSql @sql
SET @start += 1
END
Если вам нужны случайные имена таблиц, то используйте
dat
колонка из таблицы
track
где
id = @start
вместо.