mysql 报错异常集合
来源:互联网 发布:数据库创建表指令 编辑:程序博客网 时间:2024/05/22 01:41
1.异常:mysql 1062 –Duplicate entry '1' for key 'PRIMARY'
我是已经创建你一个表,并插入数据后。对表添加一列并设为主键时报错,其中图上双引号中的'1'也有可能为''
原因:新输入的列中的数据都为空,属于重复,该列有重复所以不能设为主键。
解决办法:1.先设计表添加列。
2.每行数据的该列输入不同的数据,保证不重复
3.设计表中,把该列设为主键
2.异常:org.hibernate.exception.GenericJDBCException: could not execute statement
junit.runners.ParentRunner$2.evaluate(ParentRunner.java:268)at org.junit.runners.ParentRunner.run(ParentRunner.java:363)at org.eclipse.jdt.internal.junit4.runner.JUnit4TestReference.run(JUnit4TestReference.java:86)at org.eclipse.jdt.internal.junit.runner.TestExecution.run(TestExecution.java:38)at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:459)at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:678)at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner.java:382)at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(RemoteTestRunner.java:192)Causedby: java.sql.SQLException: Field 'uid' doesn't have a default valueat com.mysql.jdbc.SQLError.createSQLException(SQLError.java:964)at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:3970)at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:3906)at com.mysql.jdbc.MysqlIO.sendCommand(MysqlIO.java:2524)at com.mysql.jdbc.MysqlIO.sqlQueryDirect(MysqlIO.java:2677)at com.mysql.jdbc.ConnectionImpl.execSQL(ConnectionImpl.java:2549)at com.mysql.jdbc.PreparedStatement.executeInternal(PreparedStatement.java:1861)at com.mysql.jdbc.PreparedStatement.executeUpdateInternal(PreparedStatement.java:2073)at com.mysql.jdbc.PreparedStatement.executeUpdateInternal(PreparedStatement.java:2009)at com.mysql.jdbc.PreparedStatement.executeLargeUpdate(PreparedStatement.java:5098)at com.mysql.jdbc.PreparedStatement.executeUpdate(PreparedStatement.java:1994)at org.hibernate.engine.jdbc.internal.ResultSetReturnImpl.executeUpdate(ResultSetReturnImpl.java:208)...45 more
从上面的异常信息中,可以发现是因为缺少主键自增的设置,所以才导致这种错误的出现。
解决方法:设置主键自动递增
3.异常:No row with the given identifier exists
<many-to-on<column name="userId" unique="true"/>
</many-to-on
修改后的:
<many-to-on
<column name="userId" unique="true"/>
</many-to-on
红色是修改的部分。意思是当对应的数据不存在时 忽略掉,用null值填充。该属性默认值:exception 。
4.异常:HibernateObjectRetrievalFailureException
错误原因:
数据造成hibernate出错.
在一个递归的数据模型中, 如 一个表结构如下
id, name , parentId, desc .
其中, parentId中的数据必须包含在id列中. 如果有一个异常的情况.
使用hibernate查询的时候,就会报上述错.
如果你也有这样的错, 请先检查你的数据吧!
- mysql 报错异常集合
- MYSQL数据库报错集合
- mysql报错及其解决方式集合
- mysql异常报错处理
- MYSQL 存储过程异常处理 报错 错误代码: 1337
- 报错集合
- C++报错集合:
- 报错集合
- Oracle报错集合
- git报错集合
- 报错集合
- Spring 报错集合
- python 报错集合
- 异常报错集锦
- dynamic_cast报错 异常
- oc 异常报错
- 报错异常
- recycleview异常报错
- 安卓Enviroment类的详解
- .slideToggle()滑动
- 关于数位颠倒--C语言描述
- 模块API之lookup_module_symbol_attrs
- 这么小改一下,PHP json_decode内存节省70%
- mysql 报错异常集合
- 关于机器学习中的受限玻尔兹曼机(RBM)的非二值情况的推导
- Nutanix的进化
- Android MVP框架+RxJava+Retrofit+cecycleView,请求网络数据并加载
- nav
- 四周二次课(11月7日) 8.4 类的重写 8.5 类的私有变量
- C 错误处理
- 【消息队列MQ】各类MQ比较
- 递归的优化(跳台阶)