.undo drop table.undo drop table

Il .undo drop table comando ripristina un'operazione drop table a una versione specifica del database.The .undo drop table command reverts a drop table operation to a specific database version.

SintassiSyntax

.undo``drop as NewTableName TableName version=v DB_MajorVersion.DB_MinorVersion TableName [NewTableName] DB_MajorVersion. DB_MinorVersion table.undo drop table TableName [as NewTableName] version=v DB_MajorVersion.DB_MinorVersion

Il comando deve essere eseguito con il contesto di database.The command must be executed with database context.

RestituisceReturns

Questo comando:This command:

  • Restituisce l'elenco degli extent della tabella originaleReturns the original table extents list
  • Specifica per ogni extent il numero di record contenuti nell'extentSpecifies for each extent the number of records the extent contains
  • Restituisce se l'operazione di recupero ha avuto esito positivo o negativoReturns if the recover operation succeeded or failed
  • Restituisce il motivo dell'errore, se pertinente.Returns the failure reason, if relevant.
ExtentIdExtentId NumberOfRecordsNumberOfRecords StatoStatus FailureReasonFailureReason
ef296c9e-d75d-44bc-985c-b93dd2519691ef296c9e-d75d-44bc-985c-b93dd2519691 100100 RecuperatoRecovered
370b30d7-cf2a-4997-986e-3d05f49c9689370b30d7-cf2a-4997-986e-3d05f49c9689 10001000 RecuperatoRecovered
861f18a5-6cde-4f1e-a003-a43506f9e8da861f18a5-6cde-4f1e-a003-a43506f9e8da 855855 Non è possibile recuperare l'extentUnable to recover extent Contenitore extent: 4b47fd84-c7db-4cfb-9378-67c1de7bf154 non è stato trovato, l'extent è stato rimosso dalla risorsa di archiviazione e non può essere ripristinatoExtent container: 4b47fd84-c7db-4cfb-9378-67c1de7bf154 wasn't found, the extent was removed from storage and can't be restored

esempiExamples

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

Come trovare la versione del database necessariaHow to find the required database version

È possibile trovare la versione del database prima dell'esecuzione dell'operazione di rilascio usando .show journal il comando:You can find the database version before the drop operation was executed by using the .show journal command :

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

LimitazioniLimitations

Se sul database è stato eseguito un comando Purge, il comando Annulla tabella non può essere eseguito in una versione precedente all'esecuzione dell'eliminazione.If a Purge command was executed on this database, the undo drop table command can't be executed to a version earlier to the purge execution.

L'extent può essere recuperato solo se il periodo di eliminazione hardware del contenitore extent in cui risiede non è stato ancora raggiunto.Extent can be recovered only if the hard delete period of the extent container it resides in wasn't reached yet.

Il comando richiede l' autorizzazione di amministratore del database.The command requires database admin permission.