ホームページ > データベース > mysql チュートリアル > mysql でテーブル データをクリアする 2 つの方法と違いについての簡単な説明

mysql でテーブル データをクリアする 2 つの方法と違いについての簡単な説明

青灯夜游
リリース: 2019-11-27 17:43:48
転載
2738 人が閲覧しました

mysql でテーブル データをクリアする 2 つの方法と違いについての簡単な説明

MySQL でデータを削除するには 2 つの方法があります:

1、truncate (切り捨て) は大まかなタイプです。 Clear

2 と delete は詳細な削除です

削除操作

必要な場合テーブル内のすべてのデータをクリアするには、次の 2 つの方法のいずれかを使用できます:

delete from tablename;
truncate table tablename;
ログイン後にコピー

データの一部のみを削除する場合は、delete:

のみを使用できます。
delete from tablename where case1 and case2;
ログイン後にコピー

違い

データの一部を詳細に削除する場合は、delete のみを使用できます。

すべてのテーブル データをクリアする場合、両方のメソッドを使用できますが、現時点では、2 つのメソッドには次のような違いがあります:

1. 戻り値

truncate戻り値は 0 ですが、delete は削除されたレコードの数

mysql> truncate serviceHost;
Query OK, 0 rows affected (0.04 sec)
mysql> delete from serviceHost where creator='test';
Query OK, 4 rows affected (0.01 sec)
ログイン後にコピー

2 を返します。 -increment field

テーブルに自動インクリメント フィールドがある場合、truncate1 にリセットされ、delete最大自動インクリメント値が維持されます。

3. 実行効率

truncateテーブルをスキャンしないことは、テーブルの構造を保持するだけで、テーブルを再作成することと同じです。元のテーブルは非常に効率的です。
delete はテーブル全体をスキャンして where ステートメントに基づいて判断するため、効率は低くなります。

4. 操作ログ

truncateサーバーログが書き込まれていないと復元できません。
delete はサーバー ログを書き込みます。

5. トリガー

truncate はトリガーをアクティブにしませんが、delete はトリガーをアクティブにします。

推奨学習: MySQL チュートリアル

以上がmysql でテーブル データをクリアする 2 つの方法と違いについての簡単な説明の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:segmentfault.com
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート