2012-04-05 5 views
46

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

+10

Многие способы сделать это. Каковы ваши требования? «Я не могу этого сделать». Что вы пробовали? Какую ошибку вы видите? –

+5

Структура вопроса оставляет несколько ясным, что автор полностью потерян. Вы можете, конечно, судить его, начав путешествие сюда. Я бы просто написал ответ. –

+0

Если ручное решение занимает слишком много времени, можно также попробовать [SysTools SQL Server Database Migrator] (https://www.systoolsgroup.com/sql-server/migration/) для перемещения данных из одной базы данных в другую. –

ответ

87

http://okayguru.blogspot.co.uk/2012/03/copy-one-database-to-another-database.html

Есть несколько способов сделать это, ниже приведены два варианта:

Вариант 1 - правой кнопкой мыши на базе данных, которую требуется скопировать

  • Выберите 'Задачи' > 'Генерировать сценарии'

  • 'Выберите конкретные объекты базы данных'

  • проверить 'Tables'

  • Mark 'Сохранить в новом окне запроса'

  • Нажмите 'Дополнительно'

  • Набор 'Типы данных для сценария' в 'схемы и данных'

  • Далее Далее

Теперь вы можете запустить сгенерированный запрос в новой базе данных.

Вариант 2

  • правой кнопкой мыши на базе данных, которую требуется скопировать

  • 'Задачи'> 'Экспорт данных'

  • Далее Далее

  • Выберите базы данных для копирования таблиц на

  • Mark «Копирование данных из одной или нескольких таблиц или представлений»

  • Выберите таблицы, которые вы хотите скопировать

  • Закончите

+2

в sql server 2008, чтобы скопировать все данные из каждой таблицы, вы должны включить данные сценария в «Задачи»> «Сгенерировать скрипты» ==> Мастер скриптов ==> выберите параметр «Вариант скрипта» – Arash

+3

+1 для опции 2 –

+0

Вариант 1 Я получаю ошибка «подготовка данных» на конечном шаге. Вариант 2 Я получаю сообщение об ошибке перед «Выбор базы данных для копирования таблиц в – Emaborsa

2
  1. Вы можете создавать резервные копии и восстанавливать базу данных с помощью Management Studio.
  2. Снова из Management Studio вы можете использовать «копию базы данных».
  3. вы можете сделать это вручную, если есть повод сделать это. Я имею в виду, вручную создать целевое db и вручную копировать данные с помощью операторов sql ...

Вы можете уточнить, почему вы это задаете? Разве вы не имеете опыта в этом или что-то еще?

4

, если обе базы данных на одном сервере, и вы хотите, чтобы передать всю таблицу (сделать копию), а затем использовать простой выбор в заявлении ...

select * into anotherDatabase..copyOfTable from oneDatabase..tableName 

Вы можете написать курсор верхней sysobjects и таким образом скопируйте весь набор таблиц.

Если требуется более сложное извлечение данных &, то используйте SSIS и создайте в нем соответствующий ETL.

12

Пример для вставки в значения в одной таблице базы данных в другую таблица базы данных

insert into dbo.onedatabase.FolderStatus 
(
    [FolderStatusId], 
    [code], 
    [title], 
    [last_modified] 
) 

select [FolderStatusId], [code], [title], [last_modified] 
from dbo.Twodatabase.f_file_stat 
+0

, это сработало для меня, однако в SqlExpress 2014 мне пришлось использовать обозначение .., найденное в других ответах, то есть INSERT INTO [db1] .. table1 (ID, MetaTitle) SELECT ID, MetaTitle FROM [db2] .. table1 –

3

Для тех, кто на Azure, выполните следующие измененные инструкции от вирусов:

  1. Открытый SSMS.
  2. Щелкните правой кнопкой мыши базу данных, которую вы хотите скопируйте данные из.
  3. Выбрать Сгенерировать скрипты >>Выбрать конкретные объекты базы данных >> Выберите таблицы/объекты, которые хотите передать. сильный текст
  4. В "Сохранить в файл" панели, нажмите Advanced
  5. Set "Типы данных для сценария" в схемы и данных
  6. Set "DROP сценария и CREATE" для Сценарий DROP и CREATE
  7. В разделе «Параметры таблицы/просмотра» заданы соответствующие элементы для ИСТИНА. Хотя я рекомендую установить все на ИСТИННО на всякий случай. Вы всегда можете изменить скрипт после его создания.
  8. Установить путь к файлу >> Далее >> Далее
  9. Открыть вновь созданный файл SQL. Удалите «Использовать» из верхней части файла.
  10. Откройте новое окно запроса в базе данных назначения, вставьте содержимое сценария (без использования) и выполните.
0

Эти решения работают в том случае, если целевая база данных пустая. Если в обеих базах данных уже есть некоторые данные, вам нужно что-то более сложное http://byalexblog.net/merge-sql-databases

+0

Это все хорошо и хорошо, за исключением того, что парень бросает FK и PK и, похоже, не возвращает их. .. Также не ответы, которые должны быть более чем эффективными, просто ссылка на чужие вещи? – Jon

+0

@Jon Почему вы хотите восстановить PK и FK в исходной базе данных? Лучше скопировать его бросок в корзину после экспорта. – Anubis

+0

Потому что я пытаюсь выполнить синхронизацию двух сред (то есть привести QA к Develop, чтобы нам не пришлось дублировать все данные). – Jon

Смежные вопросы