.undo drop table 命令
此 .undo
drop
table
命令會將 drop table 作業還原至特定的資料庫版本。 資料庫版本必須是數據表刪除之前的版本。
權限
您必須至少有資料庫 管理員許可權才能執行此命令。
Syntax
.undo
drop
table
TableName [as
NewTableName] version=
版本
深入瞭解 語法慣例。
參數
名稱 | 類型 | 必要 | 描述 |
---|---|---|---|
TableName | string |
✔️ | 要還原的數據表名稱。 |
NewTableName | string |
數據表的新數據表名稱。 | |
版本 | string |
數據表刪除之前的資料庫版本。 格式為 MajorVersion。MinorVersion。 若要尋找版本,請參閱 尋找必要的資料庫版本。 |
注意
命令必須在卸除數據表的資料庫內容中執行。
尋找必要的資料庫版本
.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 | 已復原 | |
370b30d7-cf2a-4997-986e-3d05f49c9689 | 1000 | 已復原 | |
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 命令時,將無法復原到比執行清除前更早的版本。
- 只有在未到達範圍容器的實刪除期限前,才能復原範圍。
- 如果已建立並卸除同名的數據表數次,則只能復原最近卸除的數據表。
意見反應
https://aka.ms/ContentUserFeedback。
即將登場:在 2024 年,我們將逐步淘汰 GitHub 問題作為內容的意見反應機制,並將它取代為新的意見反應系統。 如需詳細資訊,請參閱:提交並檢視相關的意見反應