SQL Server中是否存在任何视图或系统表,它会返回特定数据库中所有已删除的 对象(表,视图等)?已删除数据库中的对象SQL Server 2012
回答
第
一旦它们被删除,它们就消失了。 。
他们占用的空间最终将被覆盖,有可能获得来自数据文件的分析一些信息之前,这种情况或事务日志,但没有什么建于
或者可能还原备份并检查架构。 – OldBoyCoder
\t从sys.objects中选择*表示已删除对象上的东西! – user1254579
@ user1254579没有。与'SELECT * FROM anytable'相同不会返回删除的行。在该视图后面的系统基表所使用的数据页面上仍然可能存在关于它们的东西,但是这需要“dbcc页面”并手动解码二进制数据才能找到它。 –
试试这个:
SELECT
[Operation],
[Transaction Id],
[Transaction SID],
[Transaction Name],
[Begin Time],
[SPID],
[Description]
FROM
fn_dblog (NULL, NULL)
WHERE
[Transaction Name] = 'DROPOBJ'
它做了什么!?当我运行它时,它会显示为空 – user1254579
@ user1254579使用数据库日志文件返回有关对象放置事件的详细信息...就像您要求的那样。 –
@ user1254579好像您的日志已被清除,然后... –
为了获得有关DROP事件的一些基本信息(也关于其他事件),我使用SQL Server的默认跟踪。
请参阅以下文章https://www.simple-talk.com/sql/performance/the-default-trace-in-sql-server---the-power-of-performance-and-security-auditing/节对象事件。小心使用WHERE谓词。
注意:提到的脚本不会返回删除/截断的数据。如果您有备份或者数据库处于完全恢复状态,则希望恢复已删除的数据,但您必须提供更多信息。
- 1. 在Microsoft SQL Server 2012中恢复已删除的表格2012
- 2. 删除SQL Server数据库
- 3. SQL数据库已删除标志并已删除已删除对于
- 4. 实现对于SQL Server 2012数据库
- 5. SQL Server 2012中的数据库
- 6. 数据库中已经存在一个对象SQL Server
- 7. Catch-22当SQL Server CE数据库已满并试图删除
- 8. 强制SQL Server删除数据库
- 9. 从SQL Server中删除对象
- 10. 如何将Sql Server 2008数据库导入到SQL Server 2012中
- 11. 从sql server恢复已删除的对象
- 12. 删除SQL Server数据库中的所有数据
- 13. SQL Server 2012数据库查询问题
- 14. 同步非数据库SQL Server对象
- 15. SQL数据库删除
- 16. 拒绝在SQL服务器删除数据库对象2008
- 17. Microsoft SQL Server 2012已过期
- 18. 如何将SQL Server 2008 R2数据库转换为SQL Server 2012?
- 19. 如何在SQL Server 2014上创建SQL Server 2012数据库?
- 20. 将数据库从SQL Server 2008 Express移至SQL Server 2012
- 21. 在VS 2012的SQL Server 2012数据库项目中创建SQL代理作业
- 22. 不能删除sql server 2008和sql server 2012
- 23. SQL Server - 从Server 2008将数据库复制到Server 2012
- 24. 从SQL Server数据库中的所有表数据删除,除了一些表
- 25. 在sql server中删除大量数据
- 26. 删除SQL Server数据库中的角色?
- 27. 如何为SQL Server 2012中的每个数据库分配SQL Server的大小?
- 28. Azure的SQL数据库部署SQL Server 2012的
- 29. 删除数据库SQL PHP
- 30. 删除分离的数据库SQL 2008
你有什么问题导致你问这个问题? –