在Oracle数据库中,NHibernate环境下如何处理Guid字段类型?
- 内容介绍
- 文章标签
- 相关推荐
本文共计1370个文字,预计阅读时间需要6分钟。
在Oracle和NHibernate环境下,使用Guid字段和Castle ActiveRecord1.0.3(基于Hibernate1.2.0)配合SQL Server 2005数据库。项目需求是支持SQL Server 2005和Oracle 10g数据库。
这个项目的每个表的主键都是Guid类型,在Oracle里面,是应该使用char(38)还是raw(16)来保存Guid类型数据呢?事实上,无论使用char(38)还是raw(16),Nhibernate都会抛出无法进行类型转换的异常。究其原因,要从OracleParameter的DbType和OracleType的对应关系说起。
本文共计1370个文字,预计阅读时间需要6分钟。
在Oracle和NHibernate环境下,使用Guid字段和Castle ActiveRecord1.0.3(基于Hibernate1.2.0)配合SQL Server 2005数据库。项目需求是支持SQL Server 2005和Oracle 10g数据库。
这个项目的每个表的主键都是Guid类型,在Oracle里面,是应该使用char(38)还是raw(16)来保存Guid类型数据呢?事实上,无论使用char(38)还是raw(16),Nhibernate都会抛出无法进行类型转换的异常。究其原因,要从OracleParameter的DbType和OracleType的对应关系说起。

