SQL Server,查询日志

我们有一个COTS(商业现成的)应用程序,它正在改变其数据库模式,使现有的查询返回无效的数据。 想想“从汽车哪里selectcartype ='汽车'”,但现在我们已经增加了卡车…所以你需要做“select*来自哪里cartype ='汽车'和子types'汽车'mcars得到实际的汽车结果(忽略这个疯狂的情况下,它在更晦涩的实际情况下更有意义)。

有没有一种方法来审计由给定的SQL Serverlogin执行的所有SQL语句?

有没有一个SQL Server的“代理”,可以做到这一点,或其他内联修改(逐步取代一个表与视图)?

编辑

我们正在寻找捕获查询,使我可以匹配他们对规则引擎(即perl脚本)寻找缺乏第二个参数。

即..“如果查询INCLUDES”cartype“,而不是”子types“给我发电子邮件警报”

如果您正在运行SQL 2005或更高版本,则已经有一个已经运行的默认跟踪,可以为您提供一定程度的审计。 阅读更多在这里: http : //www.mssqltips.com/tip.asp?tip=1111

您也可以创build自己的服务器端跟踪来审计您需要的内容。 我博客如何做到这一点: http : //sqlchicken.com/2009/07/how-to-create-a-server-side-trace-with-sql-profiler/

您还可以观看关于如何使用Profiler工具查看发生了什么的video: http : //sqlserverpedia.com/wiki/Using_SQL_Server_Profiler