Как экспортировать данные таблицы в операторы INSERT? - PullRequest
12 голосов
/ 03 ноября 2010

Как я могу экспортировать таблицу из базы данных SQL Server 2000 в файл .sql в виде набора операторов INSERT INTO?

Одно из полей в таблице является типом данных Text и содержит HTML, поэтому выполнение этого вручную будет довольно трудоемким.

У меня есть доступ к SQL Server Management Studio 2008 для доступа к базе данных SQL Server 2000.

Ответы [ 4 ]

19 голосов
/ 05 марта 2014

Обновление, поскольку этот вопрос и ответы были в верхней части результатов поиска, когда я искал ответ.

В MSSQL 2008 R2:

Щелкните правой кнопкой мыши базу данных: Задачи -> Создать сценарии...

Появится диалоговое окно «Создание и публикация сценариев».Вступительная страница ничего не стоит.Нажмите «Далее»

Выберите «Выбрать конкретные объекты базы данных», а затем выберите таблицы, для которых вы хотите получить вставки.Нажмите «Далее», и в диалоговом окне перейдите к «Задать параметры сценариев».

Нажмите «Дополнительно», и вы увидите:

enter image description here

Прокрутите вниз список параметровпока вы не найдете "Типы данных для сценария".Нажмите на эту строку и выберите «Только данные» из выпадающего списка.Нажмите «ОК».Выберите параметры сохранения и несколько раз нажмите «Далее».

Примечание. Выходные данные также включают следующее после каждых 100 вставок.

  GO
  print 'Processed 200 total records'
16 голосов
/ 03 ноября 2010

Ознакомьтесь с SSMS Tool Pack - это отличное, БЕСПЛАТНОЕ дополнение для SQL Server Management Studio, которое делает много вещей - помимо прочего, оно может генерировать операторы INSERT изданная таблица.

alt text

9 голосов
/ 03 ноября 2010

Я давно использую эту хранимую процедуру: sp_generate_inserts : версия 2000 и версия 2005 (и выше) .

Вы используете это следующим образом:

sp_generate_inserts 'thetablename'

или если вы хотите фильтровать:

sp_generate_inserts 'thetablename', @from='from ... where ... order by ...'

SP вернет оператор вставки как результаты запроса.Не забудьте изменить настройку: увеличьте максимальное количество символов, отображаемых в каждом столбце (инструменты - параметры - результаты запроса).

2 голосов
/ 03 ноября 2010

Если вы можете использовать другие приложения для управления БД, самым быстрым способом будет использование инструмента, подобного SqlDbx , который имеет встроенную функцию «Экспортировать как вставки (SQL)» (простовыполнить запрос типа SELECT * FROM Table и затем использовать контекстное меню из таблицы результатов).

Если вам нужно придерживаться SQL Management Studio, вы можете использовать хранимую процедуру, подобную этой:

http://vyaskn.tripod.com/code/generate_inserts.txt

Генерирует набор результатов с оператором SQL INSERT для каждой строки целевой таблицы.Затем вы можете экспортировать результаты в файл или просто скопировать их в буфер обмена и вставить в окно запроса (он отлично работает даже с несколькими мегабайтами данных).

...