|
|
1
2
不,创建传输日志的目的不同。有一些不同的产品供应商试图从事务日志中获取信息,但这不是正确的方法。
如果需要此信息,则需要创建表触发器以进行删除或更新并收集此信息。 如果使用MS SQL 2008,则可以使用 Change Data Capture 特色。 |
|
|
2
2
显然你可以使用第三方产品,比如 Apex SQL Log ,虽然我个人没有用过。 根据事件发生的时间,您还可以从SQL Server 2005中的内置报表(如“架构更改历史记录”报表)中提取所需的信息。您可以通过默认跟踪访问此信息。见 using the Default Trace 详细情况。 您真正需要从事件中吸取的是,使用本课程为您的环境设计模式审核策略。互联网上有很多文章详细介绍了如何使用触发器实现这一点。例如,请参见 Using DDL Triggers in SQL Server 2005 to Capture Schema Changes |
|
|
3
1
您可以还原数据库(不覆盖它!)从完整备份/事务日志备份,然后从中复制删除的对象。将存储过程、视图和表的源代码保存到数据库之外(通常在源代码管理系统中)是一种很好的做法,因此不必还原数据库备份即可获取它们。 |
|
|
4
1
您可以使用DDL触发器或SQL Server审计功能 DDL在与数据库对象安全设置(如GRANT、DENY)相关的创建、更改、删除和操作时触发fire 在下面的示例中,DDL触发器跟踪对数据库表、存储过程、函数和视图执行的创建、更改和删除操作。触发器示例使用先前创建的具有适当行的存储库表(DDL-Events-by-DDL-trigger)
repository表将包含(在触发器中指定的)对数据库模式的DDL操作,以及有关更改的对象、时间和内容的信息 另一个本机方法可用于确定SQL Server数据库是否已被更改,它是 SQL Server Audit feature . 此功能在SQL Server 2008中引入,它收集由SQL Server扩展事件功能引发的服务器级和数据库级操作。但是,数据库级操作组仅在SQL Server企业版和开发人员版中可用 |
|
John D · 需要为NULL或NOT NULL的WHERE子句 10 月前 |
|
|
Nebula Tech · 在SQL Server中搜索字符串中单词的多次出现 10 月前 |
|
Marc Guillot · 记录值时忽略冲突 11 月前 |
|
|
Fachry Dzaky · 正确使用ROW_NUMBER 11 月前 |
|
|
GH DevOps · 多对多关系中同类型的SQL Server关系表设计 11 月前 |
|
|
TriumphTruth · 从满足特定条件的数据集中选择1行 11 月前 |