官术网_书友最值得收藏!

4.6 專家解惑

疑問1:表刪除操作需謹(jǐn)慎嗎?

表刪除操作將把表的定義和表中的數(shù)據(jù)一起刪除,并且MySQL在執(zhí)行刪除操作時,不會有任何的確認(rèn)信息提示,因此執(zhí)行刪除操時,應(yīng)當(dāng)慎重。在刪除表前,最好對表中的數(shù)據(jù)進行備份,這樣當(dāng)操作失誤時,可以對數(shù)據(jù)進行恢復(fù),以免造成無法挽回的后果。

同樣的,在使用ALTER TABLE進行表的基本修改操作時,在執(zhí)行操作過程之前,也應(yīng)該確保對數(shù)據(jù)進行完整的備份,因為數(shù)據(jù)庫的改變是無法撤銷的,如果添加了一個不需要的字段,可以將其刪除;如果刪除了一個需要的列,該列下面的所有數(shù)據(jù)都將會丟失。

疑問2:每一個表中都要有一個主鍵嗎?

并不是每一個表中都需要主鍵,一般多個表之間進行連接操作時需要用到主鍵。因此,并不需要為每個表建立主鍵,而且有些情況下最好不使用主鍵。

疑問3:是否每個表都可以任意選擇存儲引擎?

外鍵約束(FOREIGN KEY)不能跨引擎使用。MySQL支持多種存儲引擎,每一個表都可以指定一個不同的存儲引擎。但是要注意,外鍵約束用來保證數(shù)據(jù)的參照完整性,如果表之間需要關(guān)聯(lián)外鍵,卻指定了不同的存儲引擎,這些表之間是不能創(chuàng)建外鍵約束的。所以說,存儲引擎的選擇也不完全是隨意的。

疑問4:帶AUTO_INCREMENT約束的字段值是從1開始的嗎?

在MySQL中,AUTO_INCREMENT的默認(rèn)初始值是1,每新增一條記錄,字段值自動加1。設(shè)置自增屬性(AUTO_INCREMENT)的時候,還可以指定第一條插入記錄的自增字段的值,這樣新插入的記錄的自增字段值從初始值開始遞增,如在tb_emp8中插入第一條記錄,同時指定id值為5,以后插入的記錄的id值就會從6開始往上增加。添加唯一性的主鍵約束時,往往需要設(shè)置字段自動增加屬性。

主站蜘蛛池模板: 三江| 瑞丽市| 清流县| 周宁县| 遵化市| 保靖县| 阿图什市| 永新县| 雅江县| 镇雄县| 绩溪县| 澄迈县| 贞丰县| 额敏县| 武定县| 青神县| 灵台县| 亚东县| 广宁县| 正阳县| 体育| 丹凤县| 大足县| 道孚县| 肇东市| 长治县| 和静县| 讷河市| 丹棱县| 苗栗县| 南陵县| 南江县| 平顶山市| 邳州市| 玉门市| 梅州市| 会理县| 太仓市| 临颍县| 昌宁县| 凤山市|