这是我的问题。我在Firebird数据库上使用Ormlite(ServiceStack)。不幸的是,我继承了数据库结构,列名是关键字 - FUNCTION:
CREATE TABLE CONTACT (
ID_CONTACT TID NOT NULL,
CLIENT_ID TID NOT NULL,
NAME VARCHAR(100) NOT NULL,
PHONE VARCHAR(50),
EMAIL VARCHAR(200),
"FUNCTION" VARCHAR(60), -- this column causes problem
CREATED_DATE DATE,
MODIFIED_DATE DATE,
);
当我运行这样的Ormlite代码时:_db.Insert(contactDb) - 其中contactDb是POCO对象我得到了sql错误,因为数据库服务器需要在FUNCTION列周围括号而Ormlite没有放置它。 我尝试使用别名:
[Alias("FUNCTION")]
public string Function { get; set;}
或
[Alias("\"FUNCTION\"")]
public string Function { get; set;}
没有成功。
Firebird有方言版本3.我不能简单地更改列名。我该怎么办?