<menu id="guoca"></menu>
<nav id="guoca"></nav><xmp id="guoca">
  • <xmp id="guoca">
  • <nav id="guoca"><code id="guoca"></code></nav>
  • <nav id="guoca"><code id="guoca"></code></nav>

    sql 刪除表


    發現錯別字 1年前 提問
    回答
    1
    瀏覽
    13932
    請勿發布不友善或者負能量的內容。與人為善,比聰明更重要!
    回答數量: 1
    等保中級測評師 CICSA

    MySQL中刪除數據表有三種方式:

    • drop table:drop 是直接刪除表信息,速度最快,但是無法找回數據

      例如刪除 user 表:drop table user;

      希望刪除表結構時,用 drop

    • delete from:delete 是刪除表中的數據,不刪除表結構,速度最慢,但可以與where連用,可以刪除指定的行

      例如刪除user表的所有數據:delete from user;

      刪除user表的指定記錄:delete from user where user_id = 1;

      希望保留表結構,但要刪除部分記錄時, 用 delete

    • truncate (table):truncate 是刪除表數據,不刪除表的結構,速度排第二,但不能與where一起使用

      例如刪除 user 表:truncate table user;

      希望保留表結構,但要刪除所有記錄時, 用 truncate

    truncate和不帶where子句的delete,drop都會刪除表內的數據;truncate和delete 只刪除數據不刪除表結構,truncate 刪除后將重建索引(新插入數據后id從0開始記起),而 delete不會刪除索引 (新插入的數據將在刪除數據的索引后繼續增加),drop語句將刪除表的結構包括依賴的約束,觸發器,索引等;drop和truncate刪除時不記錄MySQL日志,不能回滾,delete刪除會記錄MySQL日志,可以回滾。

    回答所涉及的環境:聯想天逸510S、Windows 10。

    1年前 / 評論
    亚洲 欧美 自拍 唯美 另类