2013-12-11 14 views
5

プレフィックスSP(SP_ではない)を持つユーザーストアドプロシージャは、マスタDB(SP_という名前のユーザーSPに似ています)を参照することによってパフォーマンスが低下しますか?アンダースコアがないためストアドプロシージャが存在するDBはどこですか?ユーザーストアドプロシージャの名前付けを避けるSP%またはSP_%

+0

提案。私は "dbo.uspEmployeeGetSingle"を使用します。 "usp"接頭辞。エンティティ、アクション。 – granadaCoder

答えて

9

この現象を示すreserved prefixは、sp_です。いいえsp

spAddUserという名前のストアドプロシージャは、masterで一致するオブジェクトを検索せずに通常の方法で解決されます。

関連quote in books onlineは、手続きに名前を付けるときsp_接頭語の使用は避けてください

です。このプレフィックスは、システムプロシージャを指定するためにSQL Serverによって使用される です。接頭辞 を使用すると、同じ名前のシステムプロシージャ が存在する場合、アプリケーションコードが中断することがあります。

しかし、私はこれらのプレフィックスをとにかく避けています。すべてのストアドプロシージャの接頭辞がspの場合、すぐに迷惑なIMOが発生します。

+0

すべてのSPに接頭辞spが付いている場合、何がポイントですか?これは他のすべてに当てはまりますが、ハンガリーの表記はめったに意味がありません。 – BlackTigerX

+0

@BlackTigerX - 私はあなたに同意します。文脈からは、オブジェクトがストアドプロシージャであることはかなり明白です(ただし、誰もEXECスカラーUDFを使用することはほとんどありません)。しかし、 'tbl'接頭辞よりも煩わしいことはありません。 –

+0

@MartinSmith SP_(大文字)は、下位互換性のあるビューと同じ効果を持ちますか?大文字小文字のsp_接頭辞? – user797717

関連する問題