ASP.NET Azure MySQL代码首次迁移:表'xxx'已存在

时间:2015-10-09 09:00:36

标签: mysql azure ef-migrations

在尝试启用代码迁移以在azure MySql DB上创建数据库模式时,我遇到了这个令人沮丧的问题,我得到了:

[DbConfigurationType(typeof(MySqlEFConfiguration))]

指定给我的数据上下文以及

        var configuration = new App.Migrations.Configuration();
        var migrator = new DbMigrator(configuration);
        migrator.Update();

但是,一个只包含ID属性和String的简单表似乎不适用于Azure,它说 表'xxx'已经存在,当它没有时它会给出另一个错误 指定密钥太长;最大密钥长度为767字节

MySQL和Code First模式生成有什么问题? 感谢

1 个答案:

答案 0 :(得分:0)

问题很可能......

  1. 您的实体代码
  2. 您的种子代码
  3. 表可能已存在
  4. 我建议打开Visual Studio 2015 SQL Server对象资源管理器并对相关表运行一些查询,或者查看这些表是否存在以及这些表中包含哪些数据。

    出于这些原因,我也不喜欢代码首次迁移。我建议按照本教程系列进行操作。

    https://channel9.msdn.com/Blogs/Have-you-tried-turning-it-off-and-on-again/Creating-a-Database-Project-for-Artificial-Intelligence

    https://channel9.msdn.com/Blogs/Have-you-tried-turning-it-off-and-on-again/Deploying-Database-Projects-to-SQL-Azure

    https://channel9.msdn.com/Blogs/raw-tech/AI-Part-3-Entity-Framework-and-Unit-Tests