Udostępnij za pośrednictwem


Polecenie .undo drop table

Polecenie .undo drop table przywraca operację upuszczania tabeli do określonej wersji bazy danych. Wersja bazy danych musi być wersją tuż przed usunięciem tabeli.

Uprawnienia

Aby uruchomić to polecenie, musisz mieć co najmniej uprawnienia administratora bazy danych.

Składnia

.undodrop table TableName [as NewTableName] version=Wersja

Dowiedz się więcej na temat konwencji składni.

Parametry

Nazwisko Type Wymagania opis
TableName string ✔️ Nazwa tabeli do przywrócenia.
NewTableName string Nowa nazwa tabeli.
Wersja string Wersja bazy danych przed usunięciem tabeli. Format to MajorVersion.Wersja pomocnicza. Aby znaleźć wersję, zobacz Znajdowanie wymaganej wersji bazy danych.

Uwaga

Polecenie musi zostać wykonane w kontekście bazy danych, z której usunięto tabelę.

Znajdowanie wymaganej wersji bazy danych

.show journal Użyj polecenia , aby znaleźć wersję bazy danych przed wykonaniem operacji upuszczania. Na przykład:

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

Zwraca

To polecenie:

  • Zwraca oryginalną listę zakresów tabeli
  • Określa dla każdego zakresu liczbę rekordów, które zawiera zakres
  • Zwraca wartość , jeśli operacja odzyskiwania powiodła się lub nie powiodła się
  • Zwraca przyczynę błędu, jeśli jest to istotne.
ExtentId NumberOfRecords Stan FailureReason
ef296c9e-d75d-44bc-985c-b93dd2519691 100 Odzyskane
370b30d7-cf2a-4997-986e-3d05f49c9689 1000 Odzyskane
861f18a5-6cde-4f1e-a003-a43506f9e8da 855 Nie można odzyskać zakresu Kontener zakresu: 4b47fd84-c7db-4cfb-9378-67c1de7bf154 nie został znaleziony, zakres został usunięty z magazynu i nie można go przywrócić

Przykłady

// 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"

Ograniczenia

  • Jeśli w tej bazie danych zostało wykonane polecenie przeczyszczania, nie można wykonać polecenia cofania tabeli do wersji wcześniejszej w celu wykonania przeczyszczania.
  • Zakres można odzyskać tylko wtedy, gdy nie osiągnięto jeszcze twardego okresu usuwania kontenera zakresu, w którym się znajduje.
  • Jeśli tabela o tej samej nazwie została utworzona i porzucona kilka razy, można cofnąć tylko ostatnie upuszczanie.