请教高手们一个关于mysql的问题
请教一个问题
nested exception is java.sql.BatchUpdateException: Field 'categoryId' doesn't have a default value
categoryId是我表的外键
我update可以正常update.但save就抛出上面的异常.是我的mysql问题还是我配置有问题?谢谢高手们
public void setCategory(Category category){
this.category = category;
}
@ManyToOne(cascade = {}, fetch = FetchType.LAZY)
@JoinColumn(name = "categoryId",nullable = false, insertable = false, updatable = false)
public Category getCategory() {
return category;
}
public void setCategoryId(java.lang.Long value) {
this.categoryId = value;
}
@Id @GeneratedValue(generator="custom-id")
@GenericGenerator(name="custom-id", strategy = "increment")
@Column(name = "categoryId", unique = true, nullable = false, insertable = true, updatable = true, length = 20)
public java.lang.Long getCategoryId() {
return this.categoryId;
}
你save的那个对象的category属性为null
不是null,有值
如果是null我update也不会成功啊.我update成功
'categoryId' 呢?
this.category 和this.categoryId 什么关系?
//columns START
private java.lang.Long categoryId;
private java.lang.String categoryName;
private java.lang.String
相关问答:
在三十讲遇到这样一个问题就是运行代码时出现错误 Fatal error: Call to undefined method mysql::fetch_array() in D:\WWW\news\index.php on line 12
,我把mysql::fetch_array() 改成mysql::fetch_row() 又出现F ......
mysql>create book(
->id varchar(20) not null,g
->
以上是在mysql命令行里的操作
在上面中我在倒数第二行多打了一个字母g然后按了回车键,请问从倒数第一行怎么 ......
建表:插记录
SQL code:
create table tablename (id int,RQ1 datetime,RQ2 datetime)
-- select * from tablename
insert into tablename
select 1,'2009-01-01 10:00:00','2009-01-02 11:00:00' union
......
SQL code:
create PROCEDURE aa(SqlCMD1 varchar(8000),SqlCMD2 varchar(8000),SqlCMD3 varchar(8000))
begin
declare exit handler for sqlexception rollback;
start TRANSACTION;
EXECUTE SqlCMD1;
EXE ......
SQL code:
CREATE PROCEDURE A()
BEGIN
DECLARE 'Constraint Violation'
CONDITION FOR sqlexception;
DECLARE EXIT HANDLER FOR
'Constraint Violation' ROLLBACK;
BEGIN TRAN ......