2

当我们尝试从我们的产品创建新数据库时,会出现迁移错误。我们在导致错误的迁移中使用 GO 语句。以下是错误:

System.Data.SqlClient.SqlException (0x80131904): 找不到存储过程 'GO'

以下是创建的迁移类:

namespace One234C.SRC.DomainModel.ORMapping.Migrations
{
    using System;
    using System.Data.Entity.Migrations;

    public partial class AdditionOfBatchCostedFlagColumn : DbMigration
    {
        public override void Up()
        {
            AddColumn("Service.ServiceOrderComponentDetails", "BatchCostedFlag", c => c.Byte(nullable: true));
            Sql("GO");
            string queryStr ="UPDATE [Service].ServiceOrderComponentDetails " +
                              "SET BatchCostedFlag = 1";
            Sql(queryStr);
            AlterColumn("Service.ServiceOrderComponentDetails", "BatchCostedFlag", c => c.Byte(nullable: false, defaultValue:0));
        }

        public override void Down()
        {
            DropColumn("Service.ServiceOrderComponentDetails", "BatchCostedFlag");
        }

    }
}

无论如何在EntityFramework中不使用go语句来执行此操作。

4

1 回答 1

1

请参阅http://technet.microsoft.com/en-us/library/ms188037.aspx

GO 不是 Transact-SQL 语句;它是 sqlcmd 和 osql 实用程序以及 SQL Server Management Studio 代码编辑器识别的命令。

于 2013-08-29T13:18:01.353 回答