也nhibernate会遇到问题,还好找到原因了
2005-10-21 18:08
288 查看
晚了很多才开始学习nhibernate,也是整了好久,遇到些问题,记录下来,
1.nhibernate提示错误
The dialect was not set. Set the property hibernate.dialect.
解决:
因为我用了两个项目文件,一个为类库项目,一个为WEB项目,我将以下这段,以nhibernate.cfg.xml 放在了类库项目中,其实要把这段放在web.config文件中.
<?xml version="1.0" encoding="utf-8" ?>
<hibernate-mapping xmlns="urn:nhibernate-mapping-2.0">
<class name="pb.testdal.Db.users, testdal1" table="users">
<LogonID name="LogonID" column="LogonID" type="String(20)">
<generator class="assigned" />
</LogonID>
<property name="Name" type="String" column="Name(40)"/>
<property name="Password" type="String" column="Password(20)"/>
<property name="EmailAddress" type="String" column="EmailAddress(20)"/>
<property name="LastLogon" type="DateTime" column="LastLogon" />
</class>
</hibernate-mapping>
2.nhibernate提示错误
identiifier of an instance of DataAccess.User altered from 13(System.Int16) to 13(System.Int32
解决:
因为SQL SERVER 2000 建立INT长度为4,所以为int32型,将Int16改成INT32就对了
<?xml version="1.0" encoding="utf-8" ?>
<hibernate-mapping xmlns="urn:nhibernate-mapping-2.0">
<class name="pb.testdal.Db.users, testdal1" table="users">
<LogonID name="LogonID" column="LogonID" type="Int16">
<generator class="assigned" />
</LogonID>
<property name="Name" type="String" column="Name(40)"/>
<property name="Password" type="String" column="Password(20)"/>
<property name="EmailAddress" type="String" column="EmailAddress(20)"/>
<property name="LastLogon" type="DateTime" column="LastLogon" />
</class>
</hibernate-mapping>
3.nhibernate提示错误
列无效
解决:
察看hbm.xml 映射文件,column="name"/>是不是与数据库中的列名对应
在写映射文件是关键注意三个地方
<?xml version="1.0" encoding="utf-8" ?>
<hibernate-mapping xmlns="urn:nhibernate-mapping-2.0">
<class name="pb.testdal.Db.users, testdal1" table="users">
<LogonID name="LogonID" column="LogonID" type="String(20)">
<generator class="assigned" />
</LogonID>
<property name="Name" type="String" column="Name(40)"/>
<property name="Password" type="String" column="Password(20)"/>
<property name="EmailAddress" type="String" column="EmailAddress(20)"/>
<property name="LastLogon" type="DateTime" column="LastLogon" />
</class>
</hibernate-mapping>
DataAccess.User,处,[/b]与类对应的命名空间是否一致,大小写也要一致
2.type="String(25)"处,字段 长度的定义是否这样定义
3. column="Password"/处,列名也数据库中的字段是否一致
1.nhibernate提示错误
The dialect was not set. Set the property hibernate.dialect.
解决:
因为我用了两个项目文件,一个为类库项目,一个为WEB项目,我将以下这段,以nhibernate.cfg.xml 放在了类库项目中,其实要把这段放在web.config文件中.
<?xml version="1.0" encoding="utf-8" ?>
<hibernate-mapping xmlns="urn:nhibernate-mapping-2.0">
<class name="pb.testdal.Db.users, testdal1" table="users">
<LogonID name="LogonID" column="LogonID" type="String(20)">
<generator class="assigned" />
</LogonID>
<property name="Name" type="String" column="Name(40)"/>
<property name="Password" type="String" column="Password(20)"/>
<property name="EmailAddress" type="String" column="EmailAddress(20)"/>
<property name="LastLogon" type="DateTime" column="LastLogon" />
</class>
</hibernate-mapping>
2.nhibernate提示错误
identiifier of an instance of DataAccess.User altered from 13(System.Int16) to 13(System.Int32
解决:
因为SQL SERVER 2000 建立INT长度为4,所以为int32型,将Int16改成INT32就对了
<?xml version="1.0" encoding="utf-8" ?>
<hibernate-mapping xmlns="urn:nhibernate-mapping-2.0">
<class name="pb.testdal.Db.users, testdal1" table="users">
<LogonID name="LogonID" column="LogonID" type="Int16">
<generator class="assigned" />
</LogonID>
<property name="Name" type="String" column="Name(40)"/>
<property name="Password" type="String" column="Password(20)"/>
<property name="EmailAddress" type="String" column="EmailAddress(20)"/>
<property name="LastLogon" type="DateTime" column="LastLogon" />
</class>
</hibernate-mapping>
3.nhibernate提示错误
列无效
解决:
察看hbm.xml 映射文件,column="name"/>是不是与数据库中的列名对应
在写映射文件是关键注意三个地方
<?xml version="1.0" encoding="utf-8" ?>
<hibernate-mapping xmlns="urn:nhibernate-mapping-2.0">
<class name="pb.testdal.Db.users, testdal1" table="users">
<LogonID name="LogonID" column="LogonID" type="String(20)">
<generator class="assigned" />
</LogonID>
<property name="Name" type="String" column="Name(40)"/>
<property name="Password" type="String" column="Password(20)"/>
<property name="EmailAddress" type="String" column="EmailAddress(20)"/>
<property name="LastLogon" type="DateTime" column="LastLogon" />
</class>
</hibernate-mapping>
DataAccess.User,处,[/b]与类对应的命名空间是否一致,大小写也要一致
2.type="String(25)"处,字段 长度的定义是否这样定义
3. column="Password"/处,列名也数据库中的字段是否一致
相关文章推荐
- mysql 短连接压测遇到的问题及查找解决思路[终于找到原因了]
- NHibernate初学遇到的问题及解决方案之一
- 遇到的问题然后自己找到答案
- [项目过程中所遇到的各种问题记录]ORM篇——使用NHibernate配置对象实体的一些小问题 22
- 通配符的匹配很全面, 但无法找到元素 'context:component-scan' 的声明。--问题的原因及解决方案
- 【求助】Vs2005当前不能命中断点 自动加载用户控件问题【找到部分原因】
- 举例说明关于android编程中遇到的java.lang.ClassCastException: android.app.Application问题的原因及解决办法
- 附加数据库出错(错误5123)的解决办法(问题虽然解决了,但原因未找到,求指教!)
- 在servlet设置javabean(最近学习j2ee遇到这个问题,在百度上找到的很好的回答)
- NHibernate遇到的问题集 持续更新。
- NHibernate基础学习时遇到的问题
- IO流读取文件内容时,出现空格的问题(未找到原因)
- 安装CodeBlocks遇到未找到编译器的问题
- 从爬网时候遇到的一个问题看如何找到错误的根源
- jar中的类文件更新遇到的问题:请分析下原因呢
- 我使用NHibernate在.NET中遇到的问题一记!
- Android studio 启动的时候遇到tool.jar 没有找到的问题z
- android中遇到java.lang.NumberFormatException: unable to parse 'null' as integer此类问题的原因及解决方法
- 【问题解决】IDEA-Maven下Tomcat发布Web项目,遇到Jar包无法找到
- Android开发中,fragment无法找到Layout文件问题的原因与解决