亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定

grade表和student表插入記錄時,主鍵為什么都不是從1開始增加?

老師你好,在3.3小節中,在執行add()方法前對grade表和student表都做了清空操作,為什么執行后,表中的記錄依然不是從1增加呢?

正在回答

2 回答

因為老師只是把這張表里面的數據刪除,并沒有刪除重新創建這張表。

mysql有一個主鍵自增的屬性,但是不同的數據庫引擎對此實現的方式不同。但相同的是,假如你插入了3條數據,id自增到3,這時候你把數據全部刪除,表仍然保留,那么下次插入,自增值是4. ?在某些引擎下,你可以修改自增值的下一次初始值,但是不能用以前用過的值。就是說,以前自增到3了,你必須設置比3大的自增初始值,比如15,那么下一次插入,他將id=15而不是4了。

下面是不同的存儲引擎的區別:

1.MyISAM

刪除最大編號的記錄后,該編號不可重用,可設定和修改初始值。

可使用復合索引在同一個數據表里創建多個相互獨立的自增序列。了解:復合索引。

2.InnDB

不可重用編號,不可設置和修改初始值。

不支持在一個數據表里使用復合索引來生成多個互不干擾的序列編號。


1 回復 有任何疑惑可以回復我~
#1

qq_云在風中_0

修改的方法:ALTER TABLE student auto_increment = n
2016-06-01 回復 有任何疑惑可以回復我~

hibernate.hbm2ddl.auto的值的問題


create:表示啟動的時候先drop,再create
create-drop: 也表示創建,只不過再系統關閉前執行一下drop
update: 這個操作啟動的時候會去檢查schema是否一致,如果不一致會做scheme更新
validate: 啟動時驗證現有schema與你配置的hibernate是否一致,如果不一致就拋出異常,并不做更新


0 回復 有任何疑惑可以回復我~

舉報

0/150
提交
取消
Hibernate初探之一對多映射
  • 參與學習       42163    人
  • 解答問題       310    個

Hibernate中一對多關聯映射配置,以及cascade和inverse屬性作用

進入課程

grade表和student表插入記錄時,主鍵為什么都不是從1開始增加?

我要回答 關注問題
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號