zoukankan      html  css  js  c++  java
  • Database returned no natively generated

    database returned no natively generated 分类:Hibernatehbm.xml中的配置如下:

    <id name="logId" type="integer" column="LOGID">
       <generator class="native"/>
    </id>

    native的功能是:

    由数据库从identity,sequence和hilo中选取一个生成器来生成ID。

    这样就需要主键设置成自增长的,一定要小心

    采用的是Mysql5数据库,但在执行插入的时候报错:

    The database returned no natively generated identity value

    最后确认原因是数据库的表结构中关于logid,没有设置auto increment。

    正确的建库如下:

    CREATE TABLE `log` (                        
              `LOGID` int(11) NOT NULL auto_increment,  
              `LOGUSER` varchar(10) default NULL,       
              `LOGTIME` datetime default NULL,          
              `LOGTYPE` char(1) default NULL,           
              PRIMARY KEY  (`LOGID`)                    
            ) ENGINE=InnoDB DEFAULT CHARSET=gbk

    完整的hbm.xml如下:

    <?xml version="1.0"?>
    <!DOCTYPE hibernate-mapping PUBLIC 
     "-//Hibernate/Hibernate Mapping DTD 3.0//EN"
     "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
    <hibernate-mapping 
     package="com.shinyv.dao.hibernate.test">

     <class name="Log" table="log" proxy="Log" dynamic-insert="true" dynamic-update="true">
      <id name="logId" type="integer" column="LOGID">
       <generator class="native"/>
      </id>
      <property name="logTime" column="LOGTIME" not-null="true"/>
      <property name="userName" type="string" column="LOGUSER"/>
      <property name="logType" column="LOGTYPE"/>
     </class>
     
    </hibernate-mapping>

  • 相关阅读:
    Tree Grafting
    敌兵布阵
    畅通工程(并查集)
    The Suspects(并查集)
    Ubiquitous Religions(friends变形)
    Friends(采用树结构的非线性表编程)
    小球下落(二叉树)
    铁轨
    卡片游戏
    征服C指针
  • 原文地址:https://www.cnblogs.com/lmmblogs/p/7504892.html
Copyright © 2011-2022 走看看