ヘッダーをスキップ

Oracle TimesTen In-Memory Database APIおよびSQLリファレンス・ガイド リリース6.0 B25770-01 |
| 目次 | 索引

前へ | 次へ |

## TRUNCATE TABLE

TRUNCATE TABLE文は、すべての行を削除するDELETE文と類似しています。ただし、行を個別に削除するDELETEに比べ、処理が高速に実行されます。

アクセス制御

TimesTenインスタンスでアクセス制御が有効な場合、この文にはADMIN権限が必要です。

SQL構文
TRUNCATE TABLE [Owner.]TableName
パラメータ

TRUNCATE TABLEには、次のパラメータがあります。

[Owner.]TableName | 切り捨てる表を指定します。

説明

- TRUNCATE操作はロールバックできます。
- TRUNCATE文と同じトランザクション内で、この文の後にINSERT文を使用することはできません。
- 同時読取りのコミット読取り操作が可能です。読取りセマンティックは、DELETE文がある場合の読取りのコミット読取りと同じになります。
- 子表がある場合でも、TRUNCATEを実行できます。ただし、TRUNCATEを実行するには、子表を空にする必要があります。いずれかの子表に行が含まれていると、子表が空でないことを示すエラーが返されます。
- マテリアライズド・ビューのディテール表およびキャッシュ・グループまたは一時表に含まれる表では、TRUNCATEはサポートされていません。
- 表に可変長の表外データが含まれている場合、TRUNCATE TABLEのパフォーマンスは、表内のすべての行を削除するDELETE文と同等になります。表外データの詳細は、「ストレージのオーバーヘッド」を参照してください。
- 表をレプリケートしている場合にTRUNCATE文を使用すると、操作対象の行が存在しない場合でも、サブスクライバにレプリケートされます。
- タイムスタンプ競合チェックが有効な状態で表をレプリケートすると、競合が報告されません。
- 切り捨てられた表がコミットされていない場合は、この表のハッシュ・ページを変更するために、DROP TABLEおよびALTER TABLE操作を使用できません。DROP TABLEを実行しようとするとエラー805が返されます。ATLER TABLEを実行しようとするとエラー3190が返されます。

##### 例13.102

Recreation.Clubs表のすべての行を削除するには、次の文を使用します。

    TRUNCATE TABLE Recreation.Clubs;

関連項目

ALTER TABLE
DROP TABLE