次の方法で共有


.undo drop table コマンド

.undo drop table コマンドは、ドロップ テーブル操作を特定のデータベース バージョンに戻します。 データベースのバージョンは、テーブルが削除される直前のバージョンである必要があります。

アクセス許可

このコマンドを実行するには、少なくとも Database Admin アクセス許可が必要です。

構文

.undodrop table TableName [as NewTableName] version=Version

構文規則について詳しく知る。

パラメーター

件名 タイプ Required 説明
TableName string ✔️ 復元するテーブルの名前。
NewTableName string テーブルの新しいテーブル名。
Version string テーブルの削除前のデータベース バージョン。 形式は MajorVersion.MinorVersion。 バージョンを確認するには、「 必要なデータベース バージョンを検索するを参照してください。

Note

このコマンドは、テーブルが削除されたデータベースのコンテキストで実行する必要があります。

必要なデータベース バージョンを検索する

.show journal コマンドを使用して、ドロップ操作が実行される前にデータベースのバージョンを検索します。 次に例を示します。

.show database TestDB journal
| where Event == "DROP-TABLE" and EntityName == "TestTable"
| project OriginalEntityVersion 
OriginalEntityVersion
v24.3

返品

このコマンドは、次の操作を行います。

  • 元のテーブル エクステント リストを返します
  • エクステントに含まれるレコードの数をエクステントごとに指定します
  • 復旧操作が成功または失敗したかどうかを返します
  • 該当する場合は失敗の理由を返します。
ExtentId NumberOfRecords 状態 FailureReason
ef296c9e-d75d-44bc-985c-b93dd2519691 100 Recovered
370b30d7-cf2a-4997-986e-3d05f49c9689 1000 Recovered
861f18a5-6cde-4f1e-a003-a43506f9e8da 855 エクステントを復旧できません エクステント コンテナー: 4b47fd84-c7db-4cfb-9378-67c1de7bf154 が見つかりませんでした。このエクステントはストレージから削除されており、復元できません

// Recover TestTable table to database version 24.3
.undo drop table TestTable version="v24.3"
// Recover TestTable table to database version 10.3 with new table name, NewTestTable (can be used if a table with the same name was already created since the drop)  
.undo drop table TestTable as NewTestTable version="v10.3"

制限事項

  • このデータベースで Purge コマンドが実行された場合、消去を実行する前のバージョンに対して undo drop table コマンドを実行することはできません。
  • エクステントを復旧できるのは、それが存在しているエクステント コンテナーの物理的削除期間にまだ到達していない場合のみです。
  • 同じ名前のテーブルが複数回作成および削除された場合は、最新のドロップのみを元に戻すことができます。