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>
Database returned no natively generated的更多相关文章
- Execption:the database returned no natively generated identity value
org.hibernate.HibernateException: The database returned no natively generated identity value at org. ...
- The database returned no natively generated identity value错误解决方案
原因:hibernate项目中在学生表的配置文件中: <id name="studentno" column="studentno"> <ge ...
- The databse returned no natively generated identity value问题
com.cqupt.dayday.model 代码 package com.cqupt.dayday.model; import java.util.Date; /** * Created by I ...
- Django(博客系统):按照时间分层筛选“/blog/article/?create_time__year=2017”,出现问题:Database returned an invalid datetime value. Are time zone definitions for your database installed?
问题背景 添加文章时间没问题,但为了设定博客文章按照时间分层筛选(创建时间的年份.年月&月份来搜索文章),我在blog这个django app的admin.py的ArticleAdmin类中做 ...
- 解决Database returned an invalid datetime value. Are time zone definitions for your database installed?
设定博客文章按照时间分层筛选出现问题 ret=Article.objects.filter(user=user).annotate(month=TruncMonth("create_time ...
- Database returned an invalid value in QuerySet.datetimes(). Are time zone definitions for your datab
Database returned an invalid value in QuerySet.datetimes(). Are time zone definitions for your datab ...
- 报错Database returned an invalid value in QuerySet.datetimes(). Are time zone definitions for your database and pytz installed?解决
在django中的setting.py中: LANGUAGE_CODE = 'en-us' TIME_ZONE = 'Asia/Shanghai' #'UTC' USE_I18N = True USE ...
- Database returned an invalid datetime value. Are time zone definitions for your database installed?
在做文章归档的会后,打印结果时报了这个错误 ret = models.Article.objects.filter(user=user).annotate(month=TruncMonth('crea ...
- 06:Database returned an invalid datetime value. Are time zone definitions for your database installed?
出现时区问题 解决方案: 修改settings.py的时区变量. 修改前: LANGUAGE_CODE = 'en-us' TIME_ZONE = 'UTC' USE_I18N =True USE_L ...
随机推荐
- Tcl之Math
expr is for Tcl to do math operations. It takes all of its arguments ("2 + 2" for example) ...
- 00-IT人士必去的10个网站
IT人士必去的10个网站 1.Chinaunix 网址:http://www.chinaunix.net/ 简介:中国最大的linux/unix技术社区. 2.ITPub 网址:http://www. ...
- golang协程——通道channel阻塞
新的一年开始了,不管今天以前发生了什么,向前看,就够了. 说到channel,就一定要说一说线程了.任何实际项目,无论大小,并发是必然存在的.并发的存在,就涉及到线程通信.在当下的开发语言中,线程通讯 ...
- Windows开启ICMP包回显
- POSIX多线程—概述
作者:阿波链接:http://blog.csdn.net/livelylittlefish/article/details/7918110 (整半年没有更新,发几篇以前的读书笔记.) Content ...
- MFC_2.3 定时器、滑块、进度条控件
定时器.滑块.进度条控件 1.拖控件 2.绑定变量.默认,然后取名字 3.初始化设置定时器 // 设置滑块和进度条的范围 m_TrackBar.SetRange(0, 1000); m_StaticP ...
- linux ssh 利用scp传输文件
使用方式如下: 1.上传本地文件到服务器 scp /path/filename username@servername:/path/ 例如scp /var/www/test.php root@192. ...
- Redis系列(十)--集群cluster
在之前学习了Master-Slave.Sentinel模式,但是在某些情况下还是无法满足系统对QPS等要求,这时候就需要Cluster,Redis3.0支持了cluster 一.为什么使用Cluste ...
- BLOCK层基本概念:bio,request,request_queue
Summary bio 代表一个IO 请求 request 是bio 提交给IO调度器产生的数据,一个request 中放着顺序排列的bio 当设备提交bio 给IO调度器时,IO调度器可能会插入bi ...
- mysql外键是多个id组成的字符串,查询方法
借鉴:mysql使用instr达到in(字符串)的效果 结论:select * from 表名where INSTR(CONCAT(字符串),CONCAT(表id)) 问题来源:一表中的某字段是另一表 ...