当前位置:编程学习 > JAVA >>

保存 主键冲突不报错!

一个部门表 一个员工表 
部门里有一个员工的set
在保存部门的时候 也会去保存员工
但是我两次保存的员工一样 
并没有报员工主键唯一性约束的错误 而是直接将id一样的 员工覆盖掉了

部门配置
 <set name="emp"  cascade="save-update,persist" >
            <key>
                <column name="empID" precision="22" scale="0" />
            </key>
            <one-to-many class="Dept" />
        </set>
员工

<many-to-one name="dept" class="Emp" fetch="select" >
            <column name="ORDERIID" precision="22" scale="0" />
        </many-to-one> --------------------编程问答-------------------- 你 是更新吧。 --------------------编程问答-------------------- 保存做的是更新操作,所以不报错 --------------------编程问答-------------------- 用的是hibernate??? --------------------编程问答--------------------
引用 2 楼 jimmy609 的回复:
保存做的是更新操作,所以不报错


我现在要存一个新部门 然后我给他的员工一个主键 执行的是updata操作? 
他就根据我当前给的这个主键进行吗? 他是先保存 员工吧 --------------------编程问答--------------------
引用 3 楼 jimmy609 的回复:
用的是hibernate???

是的啊 --------------------编程问答--------------------
引用 5 楼 u012447444 的回复:
Quote: 引用 3 楼 jimmy609 的回复:

用的是hibernate???

是的啊


hibernate用的不太多,你用的对应关系是一对多还是多对多,按照你操作的应该是多对多,
是不是配置错了??
hibernate真心不熟,等人解答,顺便一起学习 --------------------编程问答--------------------
引用 6 楼 jimmy609 的回复:
Quote: 引用 5 楼 u012447444 的回复:

Quote: 引用 3 楼 jimmy609 的回复:

用的是hibernate???

是的啊


hibernate用的不太多,你用的对应关系是一对多还是多对多,按照你操作的应该是多对多,
是不是配置错了??
hibernate真心不熟,等人解答,顺便一起学习


我这个是一对多吧  一个部门对应多个员工  一个员工只属于一个部门 --------------------编程问答-------------------- 你更新还改变用户主键ID吗 --------------------编程问答--------------------
引用 8 楼 WLLX623 的回复:
你更新还改变用户主键ID吗

我掉用的是save方法为什么他会执行 updata方法 --------------------编程问答-------------------- 用的是hibernate中save方法,你进去看一下低层的代码,实际是如果主键存在的话会直接updata的,
补充:Java ,  Java EE
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,