SR0011:避免在物件名稱中使用特殊字元

RuleId

SR0011

分類

Microsoft.Naming

中斷變更

中斷

原因

至少有一個「資料庫物件」(Database Object) 的名稱至少包含一個特殊字元。

規則描述

如果您使用下表中的任何字元為資料庫物件命名,則不僅更難以參考該物件,也不易讀取包含該物件名稱的程式碼:

字元

描述

空白字元

[

左方括弧

]

右方括弧

'

單引號

"

雙引號

如何修正違規

若要解決此問題,您必須移除物件名稱中的所有特殊字元。 如果「資料庫專案」(Database Project) 中有其他位置參考該物件 (例如「資料庫單元測試」(Database Unit Test)),則應使用「資料庫重構」(Database Refactoring) 更新參考。 如需詳細資訊,請參閱重新命名資料庫物件的所有參考

隱藏警告的時機

如果有一個或多個其他應用程式參考資料庫物件,而您無法變更應用程式,則可能需要隱藏這些警告。

範例

在第一個範例中,資料表中某個資料行的名稱含有特殊字元。 在第二個範例中,名稱未包含特殊字元。

CREATE TABLE [dbo].[TableWithProblemColumn]
( 
[ID] INT NOT NULL IDENTITY(0, 1), 
[Small'String] VARCHAR(10)
)
ON [PRIMARY]

CREATE TABLE [dbo].[FixedTable]
( 
[ID] INT NOT NULL IDENTITY(0, 1), 
[SmallString] VARCHAR(10)
)
ON [PRIMARY]

相關規則

SR0012:避免將保留字用於型別名稱

SR0016:避免使用 sp_ 做為預存程序的前置字元

請參閱

概念

分析資料庫程式碼以改善程式碼品質