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]