Я пытаюсь скопировать таблицы (структура не данных) с помощью объекта Transfer. Я не хочу копировать значения по умолчанию в столбцах, поскольку у них есть хранимые процедуры, которые я не хочу ссылаться в них, и, следовательно, сбрасывает передачу.
Может ли кто-нибудь сказать мне, как копировать таблицы, а не их ограничения по умолчанию?
Transfer transfer = new Transfer(sourceDatabase);
transfer.CopyAllObjects = false;
transfer.CopyData = false;
transfer.CopyAllTables = false;
transfer.DestinationDatabase = destinationDatabase.Name;
transfer.DestinationServer = sourceServer.Name;
foreach (Table sourceTable in sourceDatabase.Tables)
{
transfer.ObjectList.Add(sourceTable);
}
transfer.TransferData();
благодаря
Этот код будет копировать только определения таблиц с его первичными ключами, незавершающими ключами и индексами, но без каких-либо связей между таблицами.
Transfer transfer = new Transfer(sourceDatabase);
transfer.DestinationLoginSecure = sourceServer.DestinationLoginSecure;
transfer.DestinationLogin = sourceServer.ConnectionContext.Login;
transfer.DestinationPassword = sourceServer.ConnectionContext.Password;
transfer.DestinationDatabase = destinationDatabase.Name;
transfer.DestinationServer = sourceServer.Name;
transfer.CopyAllObjects = false;
transfer.CopyAllTables = false;
transfer.CopySchema = true;
transfer.DropDestinationObjectsFirst = true;
transfer.Options.WithDependencies = false;
transfer.Options.ContinueScriptingOnError = true;
transfer.Options.DriAll = false;
transfer.Options.DriDefaults = false;
transfer.Options.DriIndexes = true;
transfer.Options.DriPrimaryKey = true;
transfer.Options.DriUniqueKeys = true;
transfer.Options.DriForeignKeys = false;
transfer.Options.IncludeIfNotExists = true;
foreach (Table sourceTable in sourceDatabase.Tables)
{
transfer.ObjectList.Add(sourceTable);
}
transfer.TransferData();
Sql
вы можете использовать этотselect * into newtable from existingtable where 1=0