Как занести тестовые данные в таблицу SQL Server

Время чтения - 1 мин.Дата публикации 10.09.2020

Для этого можно использовать следующий шаблон: 

declare @i int =1

while @i < 200 begin

INSERT INTO [dbo].[tst_finances]
           ([fromID],[toID] ,[typeID],[statusID],[sum],[created],[projectID],[factPayed])
     VALUES
           ((SELECT TOP 1 id FROM tst_customers ORDER BY NEWID())
           ,(SELECT TOP 1 id FROM tst_customers ORDER BY NEWID())
           ,(SELECT TOP 1 id FROM tst_finTypes ORDER BY NEWID())
           ,1
           ,rand()* 100000
           ,dateadd(day, - rand()*5000, getdate())
           ,(SELECT TOP 1 id FROM tst_projects ORDER BY NEWID())
           ,dateadd(day, - rand()*1000, getdate())  )
	set @i = @i + 1

end 

Рассмотрим отдельные элементы. 

1. Вставка N строк - делаем цикл while и внутри insert. 

2. Для заполнения значения по внешнему ключу необходимо выбрать случайную строку из родительской таблицы: 

(SELECT TOP 1 id FROM tst_customers ORDER BY NEWID())

3. Получение случайного числа от 0 до N:

select rand()* 100000, cast(rand()* 100 as int) 

4. Получение случайной даты (от 0 до N дней назад)

dateadd(day, - rand()*1000, getdate()) 

5. Генерация случайной строки: 

select left(NEWID(),7)

Таким нехитрым способом можно очень быстро занести в таблицу любое количество строк.11

Насколько полезной была статья?

Что еще посмотреть по SQL Server

Настройка полнотекстового поиска fulltext search в SQL Server

Как организовать бизнес-логику в хранимых процедурах SQL Server. Реализация слоя BLL в SQL

Индексы SQL Server. Поиск дубликатов

Запрос для получения SQL всех индексов для таблиц базы данных SQL Server

Как перестроить все индексы на базе SQL Server

Как разрезать строку на части в SQL по некоторому символу

Конвертация из строки в таблицу в SQL Server

Выполнение прямого запроса к URL из SQL

SQL Server Как установить у таблицы описание (MS Description)

Как получить текущего юзера БД

Как хранить в 1 поле таблицы БД значения разных типов?

Генерация MD5 в SQL Server

Ищем партнеров-разработчиков на T-SQL и PL/pgSQL

Прямая работа с заказчиками как ИП или самозанятый. Нужно знать только SQL и HTML
Falcon Space - платформа для создания сайтов с личными кабинетами
В 2-3 раза экономнее и быстрее, чем заказная разработка
Более гибкая, чем коробочные решения и облачные сервисы
Используйте готовые решения и изменяйте под свои потребности
Запрос расчета стоимости веб-проекта на базе Falcon Space
Если видео Youtube плохо грузится, то попробуйте найти видео в ВК видео на канале Falcon Space
Сайт использует Cookie, Яндекс Метрику. Используя сайт, вы соглашаетесь с правилами сайта. См. Правила конфиденциальности и Правила использования сайта OK