SQL では、delete コマンドと truncate コマンドの両方を使用してデータ (レコード) を削除できますが、両者の違いは何ですか? deleteコマンドとtruncateコマンドの違いについては以下の記事で紹介していますので、ご参考になれば幸いです。
delete コマンドと truncate コマンドの違い
1. コマンドの種類
delete はデータ操作言語です。 (DML) コマンド、truncate はデータ定義言語 (DDL) コマンドです。
2. 機能
delete コマンドは、指定された SQL ステートメントに従ってテーブルから 1 つ、複数、またはすべてのレコードを削除しますが、truncate コマンドはデータベースからすべてのレコードとテーブル構造を削除します。
3. Where 句
delete コマンドは WHERE 句をサポートしています。WHERE 句を DELETE とともに使用すると、特定のレコードをフィルタリングして削除できますが、truncate コマンドは WHERE 句をサポートしません。 。
4. ロック
delete コマンドは行レベルのロックを使用し、テーブル内の各行は削除のためにロックされます。truncate コマンドはテーブル レベルのロックを使用し、テーブル全体をロックして削除します。すべての記録。
5. インデックス ビュー
delete コマンドはインデックス ビューで使用できますが、truncate コマンドはインデックス ビューでは使用できません。
6. 実行速度
deleteコマンドはログを保持するため、非常に速度が遅くなります。ただし、truncate コマンドはトランザクション ログに最小限のログ レコードを保持するため、より高速に実行されます。
7. テーブル構造
delete コマンドはテーブル構造に影響を与えませんが、truncate コマンドはデータベースからテーブル構造を削除します。
8. トランザクション スペース
delete コマンドは、truncate コマンドよりも多くのトランザクション スペースを使用します。
以上が削除と切り捨ての違いは何ですかの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。