gpt4 book ai didi

mysql - 为什么我不能使用 Fluent NHibernate 将其插入到 MySQL InnoDB 表中?

转载 作者:行者123 更新时间:2023-11-29 14:03:34 25 4
gpt4 key购买 nike

这是我流畅的类图:

class ImportedAccountsMap : ClassMap<ImportedAccounts>
{
public ImportedAccountsMap()
{
Id(x => x.Id);
Map(x => x.Acct_FName);
Map(x => x.Acct_LName);
Map(x => x.Acct_Phone1);
Map(x => x.Acct_Email);
Map(x => x.Date);
Map(x => x.Exists);
Map(x => x.Deleted);
}
}

还有我的 Controller 代码

     public void ImportInsertTest()
{
using (ISession session = MvcApplication.SessionFactory.OpenSession())
{
using (ITransaction tx = session.BeginTransaction())
{
ImportedAccounts ia = new ImportedAccounts();
ia.Date = "test";
ia.Deleted = false;
ia.Exists = false;
ia.Acct_FName = "test";
ia.Acct_LName = "test";
ia.Acct_Email = "test@test.com";
session.Save(ia);
tx.Commit();
}
}
}

我收到此错误:

{"You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'Exists, Deleted) VALUES ('test', 'test', 'test', 'test@test.com', 'test', 0, 0)' at line 1"}

最佳答案

当我的实体属性名称等于所使用的数据库方言的关键字时,我遇到了类似的错误。我不知道MySQL的方言,但属性Exists或/和Deleted可能会导致问题。

重命名您的属性或重命名列,例如:

Map(x => x.Deleted).Column("IsDeleted");

如果这不适合您,还有一种方法可以打开关键字引用。看这个link .

关于mysql - 为什么我不能使用 Fluent NHibernate 将其插入到 MySQL InnoDB 表中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14713051/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com