如何在表中获取修改后的列名

时间:2013-09-04 05:36:58

标签: sql-server tsql

如果我们想要获得数据库中发生的更改,我们将通过sys.objects或sys.tables。但我们只获取它的表名。但是如何获取表名以及列添加到该表的内容或已修改的列(数据类型或约束)。

例如,如果我添加了名为deptid的员工表列,则应该在生成日期的更改中显示

tablename,modified or added column 

2 个答案:

答案 0 :(得分:0)

您似乎正在寻找变更追踪。

请参阅http://technet.microsoft.com/en-us/library/cc280462(v=sql.105).aspx

答案 1 :(得分:0)

据我所知,系统视图没有支持的方法。

您可以做的是在要监视的数据库对象上设置DDL audit triggers,或者在数据库处于完全恢复模式时尝试读取事务日志。

审核触发器仅在您想要立即开始审核时才有用,而阅读交易日志可能会为您提供有关数据库中所做更改的一些历史数据。

Read the log file (*.LDF) in sql server 2008

How to view transaction logs in sql server 2008