--delete turncateドロップSQL文の削除との違い

[再生]オリジナルhttps://www.cnblogs.com/1312mn/p/4422396.html

 

A、SQL構文

   。1、表ドロップ テーブル名例えば:hvr_app.video_retrieval表ドロップ
   2、TRUNCATE表 テーブル名EG:TRUNCATE表hvr_app.video_retrieval     
   3は、から削除  テーブル名  場合  列名=値、例えば:hvr_app.video_retrievalから削除ここbussine_id = 127

二、ドロップ、TRUNCATEは、違いを削除します

    1、ドロップ(削除表):領域を解放、コンテンツや定義を削除します。単にテーブル全体を削除する。データを追加するには、後に新しいテーブルがない限り不可能です。

    無効:プロシージャ/ファンクションに保存された従属表は保持されますが、その状態の変化;ドロップテーブルdelete文の構造は、依存制約(制約)、トリガー(トリガー)インデックス(指数)です。

    2、TRUNCATE(空のデータテーブル)、コンテンツを削除する定義(削除せずにスペースを解放予約テーブルのデータ構造)。違いは、ドロップしてそれであるが、空のテーブルデータのみ。

     TRUNCATEは、データの削除行をすることはできません、空のテーブルを削除することが不可欠です。

    3、(テーブル内のデータを削除)削除:DELETEステートメントのテーブル内の行を削除各削除時DELETEステートメントは、テーブルからの行の削除であり、ロールバック操作にログに格納されたトランザクションレコードの削除操作と同じ行に。

         TRUNCATEどこなし削除:テーブル構造を削除せず、唯一の削除データ(定義)

    4、切り捨てテーブルのすべての行を削除するテーブルが、テーブルの構造とその列、制約、インデックスなどが変更されません。新ラインカウント値は、その列に使用するIDを再播種しました。あなたがアイデンティティのカウント値を保持したい場合は、削除を使用しています。

         あなたがテーブルの定義とそのデータを削除したい場合は、DROP TABLE文を使用します。  
    図5は、外部キー制約によって参照されるテーブルに、TRUNCATEテーブルを使用することはできません、とwhere句なしdelete文を使用します。TRUNCATE表が記録されているためで、それはトリガーをアクティブにすることはできません。

    6、実行速度は、一般的には:> TRUNCATE>を削除ドロップします。

    実行がトリガされます、対応するトリガーがある場合は、7、delete文は、データベース操作言語(DML)で、この操作は、トランザクションのコミット後に有効になり、ロールバックsegementを配置します。

          TRUNCATE、即効で動作する、データベース定義言語(DDL)を落とし、元のデータが置かれていないロールバック・セグメントをロールバックすることができない、操作者がトリガをトリガしません。

おすすめ

転載: www.cnblogs.com/carey9420/p/11983444.html