もっと詳しく
SQL truncateコマンドは、テーブルスキーマを含むテーブルメタデータを保持しながら、データベーステーブル内のデータを削除します。

標準SQLでTRUNCATEコマンドを使用する方法について説明します。

コマンド構文

TRUNCATEコマンドの構文は次のとおりです。

切り捨てる テーブル TABLE_NAME;

このコマンドは、削除するテーブルの名前を取ります。 このコマンドは、ビュー、モデル、または外部テーブルをサポートしていないことに注意してください。

truncateコマンドは、テーブルスキーマを削除せずにテーブル内のすべてのデータを削除する必要がある場合に最も役立ちます。

対応するコマンド(DELETE)とは異なり、truncateコマンドは、WHERE句を使用した特定のレコードのフィルタリングをサポートしていません。

TRUNCATEコマンドのロールバックの実行は、SQL Serverなどの一部のデータベースエンジンでサポートされていますが、これは標準SQLではサポートされていない機能です。

truncateコマンドのその他の機能は次のとおりです。

  1. テーブルが外部キーによって参照されているか、インデックス付きビューが含まれている場合、コマンドは失敗します。
  2. 削除コマンドよりも比較的高速です。
  3. 個々のレコードではなくテーブル全体をロックするため、必要なトランザクションスペースが少なくて済みます。

データベースエンジンによっては、テーブルの切り捨て操作を実行するための明示的なアクセス許可が必要です。 たとえば、SQL Serverでは、ALTERテーブルのアクセス許可が必要です。 MySQLにはDROP権限が必要であり、PostgreSQLにはTRUNCATE権限が必要であり、OracleデータベースにはDROPANYTABLE権限が必要です。

SQLトランケートの例

SQLの切り捨てコマンドの使用方法を説明しましょう。 以下に示すようなレコードを持つcustomersと呼ばれるサンプルテーブルがあるとします。

以下に示すように、テーブルを切り捨てることができます。

前のコマンドは、テーブル内のすべてのデータを削除する必要があります。 テーブルをクエリすると、空の行セットが返されます。

外部キーがテーブルを参照している場合、truncateコマンドは失敗します。 出力例を以下に示します。

結論

このチュートリアルでは、truncateコマンドがどのように機能するか、およびtruncateコマンドを使用してテーブルからデータを削除する方法について説明しました。 この記事がお役に立てば幸いです。 その他のヒントやチュートリアルについては、他のLinuxヒントの記事を確認してください。

The post SQLトランケートテーブルコマンド appeared first on Gamingsym Japan.