Gibt es eine Ansicht oder Systemtabelle in SQL Server, die alle gelöschten Objekte (Tabellen, Ansichten usw.) in einer bestimmten Datenbank zurückgibt?Gelöschte Objekte in einer Datenbank SQL Server 2012
Antwort
Nr.
Sobald sie gelöscht werden, sind sie weg. .
Die von ihnen verbraucht wird schließlich überschrieben werden, könnte es möglich sein, einige Informationen aus der Analyse der Daten-Dateien zu erhalten, bevor diese oder die Log-Transaktion geschieht, aber es gibt nichts gebaut in
Oder möglicherweise eine Sicherung wiederherstellen und das Schema untersuchen. – OldBoyCoder
Tut \t Wählen * aus sys.objects sagt etwas über gelöschte Objekte !! – user1254579
@ user1254579 nein. Dasselbe wie 'SELECT * FROM anytable' gibt keine gelöschten Zeilen zurück. Auf den Datenseiten, die von den System-Basistabellen hinter dieser Ansicht verwendet werden, könnte sich noch etwas über sie befinden, aber das würde eine dbcc-Seite und eine manuelle Decodierung der binären Daten benötigen, um sie zu finden. –
Try this:
SELECT
[Operation],
[Transaction Id],
[Transaction SID],
[Transaction Name],
[Begin Time],
[SPID],
[Description]
FROM
fn_dblog (NULL, NULL)
WHERE
[Transaction Name] = 'DROPOBJ'
was macht es !? Es gibt leer, wenn ich es – user1254579
ausführen @ user1254579 gibt Details über Objekttropfenereignisse zurück, die die Datenbankprotokolldatei verwenden ... Wie Sie verlangten. –
@ user1254579 scheint, dass Sie Protokolle gelöscht werden dann ... –
um einige grundlegende Informationen über Drop-Ereignis (und auch über andere Veranstaltungen) zu erhalten, habe ich die Standard-Spur von SQL Server.
Siehe folgenden Artikel https://www.simple-talk.com/sql/performance/the-default-trace-in-sql-server---the-power-of-performance-and-security-auditing/ Abschnitt Objekt Ereignisse. Sei vorsichtig mit WHERE-Prädikaten.
Hinweis: Das erwähnte Skript gibt keine gelöschten/abgeschnittenen Daten zurück. Wenn Sie Backups haben oder wenn die Datenbank vollständig wiederhergestellt ist, gibt es einige Hoffnungen, gelöschte Daten wiederherzustellen, aber Sie müssen weitere Informationen bereitstellen.
Was ist das eigentliche Problem, das Sie dazu gebracht hat, diese Frage zu stellen? –