Как создать в новой БД такую же таблицу, как в уже существующей?

Iden85
Дата: 23.02.2010 16:34:50
Здравствуйте!
Вопрос такой:
Необходимо создать в БД-1 такую же таблицу, как в БД-2 (только DDL, данные копировать не нужно). Обе БД задаются как входные параметры хранимой процедуры (которая, собственно, выполняет создание таблицы). В БД-1 добавляются таблицы, которых нет в ней, но есть в БД-2 (то есть, в общем случае может быть одна такая таблица, может быть их много, может вообще не быть таких таблиц; соответственно, количество полей - тоже может быть разным.
Пробовал юзать dynamic SQL, курсоры, в результате залез в такие дебри, чот аж страшно...
Есть ли тут другие способы. Или, если нужно использовать указанные выше инструменты, как это сделать правильно?
Паганель
Дата: 23.02.2010 16:39:05
Iden85
Необходимо создать в БД-1 такую же таблицу, как в БД-2
Запустите на БД-1 тот самый скрипт,
посредством которого была создана эта таблица в БД-2
Iden85
Дата: 23.02.2010 16:48:48
Паганель,

Суть в том, что нужно создать процедуру, которая сравнивает 2 БД (А и В) и создаёт в одной из них (А) таблицы, которых нет в ней, но есть в другой БД (В).
Паганель
Дата: 23.02.2010 16:52:23
Iden85
нужно создать процедуру, которая сравнивает 2 БД (А и В) и создаёт в одной из них (А) таблицы...
И внешние ключи
И индексы
И триггеры
И секции
....

А может лучше сказать внедренцу, который забыл запустить скрипт на одной из БД,
пусть не забывает запускать скрипты?
Crimean
Дата: 23.02.2010 16:52:59
select * into from where 0=1
таблица будет 1:1
но вот DRI + индексы надо будет переносить
Iden85
Дата: 23.02.2010 17:05:00
Ну, про DRI и индексы - понятно, это отдельно. Сейчас интересуют именно таблицы и поля в них.
Не совсем понял суть запроса
Crimean
select * into from where 0=1

Можно пояснить? ;)
iap
Дата: 23.02.2010 17:08:48
Iden85
Ну, про DRI и индексы - понятно, это отдельно. Сейчас интересуют именно таблицы и поля в них.
Не совсем понял суть запроса
Crimean
select * into from where 0=1

Можно пояснить? ;)
SELECT TOP 0 *
INTO [БД-2].[SchemaName].[TableName]
FROM [БД-2].[SchemaName].[TableName];
iap
Дата: 23.02.2010 17:09:15
iap
Iden85
Ну, про DRI и индексы - понятно, это отдельно. Сейчас интересуют именно таблицы и поля в них.
Не совсем понял суть запроса
Crimean
select * into from where 0=1

Можно пояснить? ;)
SELECT TOP 0 *
INTO [БД-1].[SchemaName].[TableName]
FROM [БД-2].[SchemaName].[TableName];
Iden85
Дата: 23.02.2010 18:28:46
Всем спасибо!)