今回は、TRUNCATE TABLEの使い方について紹介していきます。
TRUNCATE TABLEは、テーブルのデータを全行高速で削除することができます。
使い方はとても簡単です。さっそくやり方を見ていきましょう。
TRUNCATE TABLE 使い方
まずは、TRUNCATE TABLEの使い方を紹介します。
TRUNCATE TABLE テーブル名
これだけで、TRUNCATE TABLEを使うことができます。とても簡単ですね。
指定したテーブルのデータがすべて削除されるので気を付けてください。
DELETE文との違い
続いて、DELETE 文と何が違うの?っと疑問を持った方もいると思いますので、簡単に解説していきます。
DELETE文との違いは大きく2つあります。
- TRUNCATE文は全てのデータを削除することしかできない。
- DELETE文に比べて、TRUNCATE文は、高速で処理を行うことができます。
fa-arrow-circle-rightDELETE文は削除するデータをしてすることができますが、TRUNCATE文は全てのデータを削除することしかできません。
なのでDELETE文はWHERE句などを指定できますが、TRUNCATE文にはありません。
fa-arrow-circle-rightDELETE文に比べて、TRUNCATE文は、高速で処理を行うことができます。
TRUNCATE文は、ログを残さず全て削除するからです。
具体的に言うと、DELETE文は、トランザクションを張って実行することで、ロールバックができるようになっています。
ですが、TRUNCATE文はこういったことができません。なので、大量のデータを高速一括削除をすることができます。
どちらが優れているとかではないので、状況に応じて使い分けれるようにしておきましょう。
※SQLSERVERでは、TRUNCATEもトランザクションを張ることができます。
まとめ
今回は、TRUNCATE文を紹介しました。使い方はとても簡単です。
TRUNCATE TABLE テーブル名
また、DELETE文との違いを抑えて、DELETE文とTRUNCATE文を使い分けられるようにしておきましょう。
- DELETE文は削除するデータをしてすることができますが、TRUNCATE文は全てのデータを削除することしかできません。
- DELETE文に比べて、TRUNCATE文は、高速で処理を行うことができます。