用于SQL Server的FxCop - 用于分析SQL Server数据库以查找潜在问题的工具

Ian*_*oyd 5 sql-server fxcop sql-server-2008-r2

有没有可以分析SQL Server数据库潜在问题的工具?

例如:

  • 未编制索引的外键列
  • uniqueidentifier没有列的索引FILL FACTOR
  • 一个LastModifiedDate DATETIME有没有列UPDATE触发更新日期时间
  • 具有"高"碎片的大型索引
  • 存在于多个范围内的非碎片索引
  • 一个不包含的触发器SET NOCOUNT ON(让它可疑"触发器返回结果集和/或正在运行SET NOCOUNT OFF而另一个未完成的结果集处于活动状态.")
  • 数据库,表,存储过程,触发器,视图,使用创建 SET ANSI_NULLS OFF
  • 一个数据库或表SET ANSI_PADDING OFF
  • 使用创建的数据库或表 SET CONCAT_NULL_YIELDS_NULL OFF
  • 一个高度分散的索引,可能从较低的FILLFACTOR(即更多填充)受益
  • 具有非常宽的聚簇索引的表(例如uniqueidentifier + uniqueidentifier)
  • 具有非唯一聚簇索引的表
  • 使用text/ntext而不是varchar(max)/nvarchar(max)
  • 使用varchar可能包含本地化字符串的列,应该是nvarchar(例如Name,FirstName,LastName,BusinessName,CountryName,City)
  • 使用的*=,=*,*=*而不是LEFT OUTER JOIN,RIGHT OUTER JOIN,FULL OUTER JOIN
  • 触发器返回结果集
  • 声明为的任何列timestamp而不是rowversion
  • 一个可以为空的timestamp
  • 使用image而不是varbinary(max)
  • 数据库不是简单模式(或日志文件超过数据文件大小的100倍)

是否有SQL Server的FxCop?

注意: Microsoft SQL Server 2008 R2最佳实践分析工具不符合要求.

mar*_*c_s 8

SQLCop - 免费,也是一个非常有趣的工具!

在此输入图像描述