3

Entity Framework 版本 4.3+ 出现以下错误

http://www.cnblogs.com/shouzheng/archive/2012/03/09/2388177.html

(翻译)使用EntityFramework Code First Development和MySql数据库问题的一个案例

我想使用最新版本的 EF,因为版本 <= 4.1 不提供迁移功能。

MySql.Data.MySqlClient.MySqlException (0x80004005):您的 SQL 语法有错误;检查与您的 MySQL 服务器版本相对应的手册,了解在 'NOT NULL, ProductVersionmediumtext NOT NULL) 附近使用的正确语法;

ALTER TABLE 3 createMigrator, ObjectContext objectContext) at System.Data.Entity.Internal.InternalContext.CreateDatabase(ObjectContext objectContext) at System.Data.Entity.Database.Create() at System.Data.Entity.DropCreateDatabaseAlways 1.b_ 0(DbContext c) 在 System.Data.Entity.Internal.InternalContext.<>c _DisplayClass8.b_ 6() 在 System.Data.Entity.Internal.InternalContext.PerformInitializationAction(Action action) 在 System.Data.Entity.Internal.InternalContext.PerformDatabaseInitialization () 在 System.Data.Entity.Internal.LazyInternalContext.b _4(InternalContext c) 在 System.Data.Entity.Internal.RetryAction 1 action) 在 System.Data.Entity.Internal.LazyInternalContext.InitializeDatabase()__MigrationH' at line 6 at MySql.Data.MySqlClient.MySqlStream.ReadPacket() at MySql.Data.MySqlClient.NativeDriver.GetResult(Int32& affectedRow, Int32& insertedId) at MySql.Data.MySqlClient.Driver.GetResult(Int32 statementId, Int32& affectedRows, Int32& insertedId) at MySql.Data.MySqlClient.Driver.NextResult(Int32 statementId, Boolean force) at MySql.Data.MySqlClient.MySqlDataReader.NextResult() at MySql.Data.MySqlClient.MySqlCommand.ExecuteReader(CommandBehavior behavior) at MySql.Data.MySqlClient.MySqlCommand.ExecuteNonQuery() at System.Data.Objects.ObjectContext.ExecuteStoreCommand(String commandText, Object[] parameters) at System.Data.Entity.Internal.InternalContext.ExecuteSqlCommand(String sql, Object[] parameters) at System.Data.Entity.Database.ExecuteSqlCommand(String sql, Object[] parameters) at System.Data.Entity.Migrations.History.HistoryRepository.BootstrapUsingEFProviderDdl(XDocument model) at System.Data.Entity.Internal.InternalContext.<SaveMetadataToDatabase>b__4() at System.Data.Entity.Internal.InternalContext.PerformInitializationAction(Action action) at System.Data.Entity.Internal.InternalContext.SaveMetadataToDatabase()
at System.Data.Entity.Internal.DatabaseCreator.CreateDatabase(InternalContext internalContext, Func

1.InitializeDatabase(TContext context) at System.Data.Entity.Database.<>c__DisplayClass21.PerformAction(TInput input) at System.Data.Entity.Internal.LazyInternalContext.InitializeDatabaseAction(Action
在 System.Data.Entity.Internal.InternalContext.GetEntitySetAndBaseTypeForType(Type entityType) 在 System.Data.Entity.Internal.Linq.InternalSet 1.Initialize() at System.Data.Entity.Internal.Linq.InternalSet1.get_InternalContext()
在System.Data.Entity.Internal.Linq.InternalSet 1.Add 1.ActOnSet(Action action, EntityState newState, Object entity, String methodName) at System.Data.Entity.Internal.Linq.InternalSet(Object实体)
在 System.Data.Entity.DbSet`1.Add(TEntity entity) at DBPreparationTool.Form1.PrepareDB_Click(Object sender, EventArgs e) 在 D:\Workspaces\Experiments\FaizeMBRoot\Source\DBPreparationTool\Form1.cs:line 39 at System.Windows.Forms.Control.OnClick(EventArgs e) 在 System.Windows.Forms.Button.OnClick(EventArgs e) 在 System.Windows.Forms.ButtonBase.OnKeyUp(KeyEventArgs kevent) 在 System.Windows.Forms.Control。 ProcessKeyEventArgs(Message& m) 在 System.Windows.Forms.Control.ProcessKeyMessage(Message& m) 在 System.Windows.Forms.Control.WndProc(Message& m) 在 System.Windows.Forms.ButtonBase.WndProc(Message& m) 在 System。 System.Windows.Forms.Control.ControlNativeWindow.OnMessage(Message& m) 在 System.Windows.Forms.Control 上的 Windows.Forms.Button.WndProc(Message& m)。ControlNativeWindow.WndProc(Message& m) 在 System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)

4

1 回答 1

4

请参阅此博客文章:http ://brice-lambson.blogspot.com/2012/05/using-entity-framework-code-first-with.html

于 2012-05-12T00:12:59.247 回答