不理解更新操作
我理解的這里的語義是這樣的:
直接從學生表中獲取主鍵為“1”的學生對象
將這個學生對象添加到班級2中
將班級2更新到班級表中。
問題:為什么上面的操作可以改變 ? 學生表中 ?主鍵為“1”的學生 ?的外鍵?
我理解的情況應該是這樣的:原來的主鍵為“1”的學生信息不變,系統再次添加了一個除了外鍵不同其他column都一樣的學生記錄,然后添加失敗,學生表主鍵沖突
我理解的這里的語義是這樣的:
直接從學生表中獲取主鍵為“1”的學生對象
將這個學生對象添加到班級2中
將班級2更新到班級表中。
問題:為什么上面的操作可以改變 ? 學生表中 ?主鍵為“1”的學生 ?的外鍵?
我理解的情況應該是這樣的:原來的主鍵為“1”的學生信息不變,系統再次添加了一個除了外鍵不同其他column都一樣的學生記錄,然后添加失敗,學生表主鍵沖突
2016-10-10
舉報
2016-10-29
我也覺的奇怪 ?他的主鍵生成策略是increment 就是hibernate生成的主鍵 ?控制臺也是輸出了修改的sql語句 ?怎么會是修改了? ?而不是重新添加一條? 好神奇
2016-10-11
其實我也是剛剛學到這個框架 很多問題也不明白 等其他的大神來答吧~
2016-10-10
主鍵自帶唯一非空約束啊,而且之后張三的id依然是“1”而不是“3”。可以排除hibernate自動刪除原記錄再增加一條的這種可能,hibernate只是做了修改,問題依然是:怎么被修改的!
2016-10-10
我的理解是,你在更新了班級信息的同時,學生信息的主鍵也被重置了,因為主鍵只是自增,并沒有相關的約束!
而外鍵由于有約束,所以和新表相對應