我正在尝试为我在MemSQL中创建的2个超级简单表创建一个实体模型:
CREATE TABLE foo(id int primary key auto_increment, name varchar(20)); CREATE TABLE t(id int primary key auto_increment);
我正在使用Entity Framework 6.1.x. 我安装了MySQL连接器,因为MemSQL是与MySQL兼容的二进制协议,在我的项目中添加了一个新的ADO.NET实体模型并完成了向导.遇到以下问题:
大多数情况下,向导会超时尝试查询表和视图列表.它可能是这样的,因为MemSQL集群在Azure中是远程的.我明天会尝试创建一个本地虚拟机群集,然后再试一次.
它成功读取表和视图列表的时间,我选择了两个表,然后让Entity Framework生成模型.我收到以下错误:
由于以下异常,无法生成模型:'System.Data.Entity.Core.EntityCommandExecutionException:执行命令定义时发生错误.有关详细信息,请参阅内部异常 ---> MySql.Data.MySqlClient.MySqlException:您的SQL语法有错误; 检查与MySQL服务器版本对应的手册,以便在第47行使用"LEFT(COLUMN_TYPE,10)='tinyint(1)','bool',IF(LEFT(COLUMN_TYPE,10)'附近的正确语法
所以我不知所措.是否可以将实体框架与MemSQL一起使用?