【发布时间】:2010-10-06 15:57:14
【问题描述】:
我正在运行 NHibernate 和 SQL Server CE 我正在尝试使用 GUID 作为我的 ID 列。这是我已有的代码:
映射:
<class name="DatabaseType" table="DBMON_DATABASE_TYPE">
<id name="Id" column="DATABASE_TYPE_ID">
<generator class="guid" />
</id>
<property name="DispName" />
</class>
这是它创建的 create 语句:
create table DBMON_DATABASE_TYPE (
DATABASE_TYPE_ID BIGINT not null,
DispName NVARCHAR(255) null,
primary key (DATABASE_TYPE_ID)
)
这是我希望能够在其上运行的那种插入语句:
Insert into DBMON_DATABASE_TYPE (DATABASE_TYPE_ID,DISPNAME) values ('f5c7181e-e117-4a98-bc06-733638a3a264','DOC')
这是我尝试时遇到的错误:
Major Error 0x80040E14, Minor Error 26306
> Insert into DBMON_DATABASE_TYPE (DATABASE_TYPE_ID,DISPNAME) values ('f5c7181e-e117-4a98-bc06-733638a3a264','DOC')
Data conversion failed. [ OLE DB status value (if known) = 2 ]
再一次,我的目标是能够使用 GUID 作为我的表的 ID 列,它们甚至不需要自动生成,我可以在 NHibernate 的 Save/SaveOrUpdate 方法中手动生成它们。如果您还有其他需要了解的信息,请告诉我!
【问题讨论】:
标签: asp.net sql nhibernate sql-server-ce guid