我们有一个DB2数据库的EF模型。
是否可以使用此模型生成SQL Server数据库?然后在使用之间切换 DB2和SQL Server?
我们认为开发人员可以针对本地SQL Server数据库进行开发。
我们使用EF 4.1。
答案 0 :(得分:1)
如果您自己定义字段类型,则可能存在问题。 我一直在用Sql-Oracle做这样的事情,最后,我们在那里创建自定义属性,如[VarcharAttribute]并将实体配置为在OnModelBuilder函数中使用正确的类型名称。
这可能不起作用:
[Column(TypeName="varchar")]
public string Data{get;set;}
因为对于Oracle,它应该如下所示:
[Column(TypeName="VARCHAR2")]
public string Data{get;set;}
还可能存在其他问题,例如在sql-oracle中合并一个表名超过30个字符,并且它在sql中工作,但在oracle中不起作用,因为表名限制为30个字符。
但是在解决了这些问题之后,它就可以了。最后,我们可以从配置文件中设置提供程序。
是的,如果您处理数据库差异,则可能
答案 1 :(得分:1)
老问题但是......
您无法将迁移与IBM DB2 EF Provider一起使用。
关于DB2的EF 6(无迁移),IBM现在支持
您可以在此处找到EF支持的官方nuget包
http://www.nuget.org/packages/EntityFramework.IBM.DB2/
但它不支持迁移。
如果您需要迁移,您也可以使用此包(除了以前的包)
https://www.nuget.org/packages/System.Data.DB2.EntityFramework.Migrations/
你可以在这里找到更多信息
https://db2ef6migrations.codeplex.com/