我們正在爲我們的數據庫制定一套標準。我擔心,人們會忘記標準,或者新的開發人員會上網,而不會使用它們。執行或審覈SQL Server標準的工具
我想知道是否有工具來審覈標準並提供基於標準的報告。我希望它包含諸如列的命名約定之類的東西,而不是以GUIDS作爲主鍵。
Apex SQL過去有一個叫做Enforce的工具。但他們停止了它。市場上還有這樣的工具嗎?
我們正在爲我們的數據庫制定一套標準。我擔心,人們會忘記標準,或者新的開發人員會上網,而不會使用它們。執行或審覈SQL Server標準的工具
我想知道是否有工具來審覈標準並提供基於標準的報告。我希望它包含諸如列的命名約定之類的東西,而不是以GUIDS作爲主鍵。
Apex SQL過去有一個叫做Enforce的工具。但他們停止了它。市場上還有這樣的工具嗎?
你可以用Policy-Based Management做很多類似的事情。例如,這裏有一些提示,我寫了mssqltips,描述瞭如何做兩件事情:
Enforce database naming conventions
Identify SQL Servers with inefficient power plans
Find all columns of a specific data type
一些不同的技巧通過其他作者也是如此:
http://www.mssqltips.com/category.asp?catid=89
天空的極限,真的。您可以運行SQL查詢來獲得標量結果(以及其他一些內容),您可以使用PBM進行檢查。
對於對象級別的東西,您可以使用簡單的DDL triggers獲得很好的部分。對於這些,您可以簡單地掛接到DDL事件(例如CREATE TABLE),並且如果您的命名約定或其他標準未被支持,則回滾。它們與DML觸發器非常相似,用於修改表中的數據。
請記住,您無法始終強制執行所有操作,例如,您無法使用PBM或DDL觸發器回滾非「可交易」的事物(例如CREATE DATABASE)。並且要小心在哪裏放置「防止變更」類型的強制執行 - 例如,回滾一個需要12個小時的CREATE INDEX,如果僅僅因爲命名沒有正確命名而回滾,則不會很好地執行。
澳大利亞的SSW也有一個非常好的工具,稱爲SQL Auditor。
他們檢查SQL Server數據庫對的「最佳實踐」規則整體轉換,給你你根據自己的規則集怎麼做的報告。
感謝您的迴應,有沒有辦法使用PBM來強制使用擴展屬性?理想情況下,我們想強制執行不能創建表的MS_Description擴展策略。謝謝! – russds