【问题标题】:SQL Server 2005: When copy table structure to other database "CONSTRAINT" keywords lostSQL Server 2005:将表结构复制到其他数据库时“CONSTRAINT”关键字丢失
【发布时间】:2010-04-27 20:12:57
【问题描述】:

原始表格的片段:

CREATE TABLE [dbo].[Batch](
    [CustomerDepositMade] [money] NOT NULL 
         CONSTRAINT [DF_Batch_CustomerDepositMade]  DEFAULT (0)

复制表的片段:

CREATE TABLE [dbo].[Batch](
    [CustomerDepositMade] [money] NOT NULL,

复制数据库代码:

        Server server = new Server(SourceSQLServer);
        Database database = server.Databases[SourceDatabase];

        Transfer transfer = new Transfer(database);
        transfer.CopyAllObjects = true;
        transfer.CopySchema = true;
        transfer.CopyData = false;

        transfer.DropDestinationObjectsFirst = true;

        transfer.DestinationServer = DestinationSQLServer;
        transfer.CreateTargetDatabase = true;

        Database ddatabase = new Database(server, DestinationDatabase);
        ddatabase.Create();
        transfer.DestinationDatabase = DestinationDatabase;
        transfer.Options.IncludeIfNotExists = true;
        transfer.TransferData();

【问题讨论】:

    标签: sql sql-server backup copy default-constraint


    【解决方案1】:

    Transfer.Options 属性可以提供答案。特别是,查看documentation,将 DriDefaults 属性以及更一般的 DriAll 属性设置为 true 可能会有所帮助。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-01-30
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多