YuriAM
Дата: 13.12.2002 13:25:58
To Glory
Script при копировании вообще то опасная штука.
Если до момента копирования что то изменился....
А что имеете ввиду - "можно сразу при создании копии таблицы"
"на основе системных таблиц и/или INFORMATION_SCHEMA. " - есть что то на готове? Я начал, только анализировать слишком много приходиться и оставил .
Glory
Дата: 13.12.2002 13:43:24
Не понимаю вас - CONSTRAINT и INDEX не копируются отдельно, они создаются командами DDL. Если вы создаете таблицу с помощью CREATE TABLE, то что вам мешает сразу же указать CONSTRAINT-ы и INDEX-ы ?
Если же вы хотите сгенирировать DDL команды для создания CONSTRAINT и INDEX, то можно воспользоваться информацией например из
SELECT * FROM INFORMATION_SCHEMA.TABLE_CONSTRAINTS
SELECT * INFORMATION_SCHEMA.KEY_COLUMN_USAGE
SELECT * FROM INFORMATION_SCHEMA.CHECK_CONSTRAINTS
или
из системнымных таблиц(sysobjects, syscolumsn, sysindxes, sysconstraints) и процедур(sp_help, sp_helpconstraint, ... )
YuriAM
Дата: 13.12.2002 14:01:11
Дело в том , что таблицы генерируються в цикле с помощью
SELECT INTO
Вообще то хочу сделать нечто обобщенное копирующее БД -> БД
которое дала бы возможность изменить данные ( допустим взять не все )
в процессе копирования, используя sysreferences, определяя элемент только в корневой связке исключить все его вхождения .