Sybaseでサーバーオプションの値を照会するにはどうすればよいですか?
質問
たとえば、 quoted_identifier
サーバーオプションの現在の値を知りたい場合、この情報を提供できるクエリはありますか?
解決
セッションレベルのオプションの一部は、@@ options変数を介してvarbinaryとして使用できます。ビットマスクの解釈に関するガイダンスは次のとおりです
and
http://www.isug.com/Sybase_FAQ/ASE/code /sp_helpoptions.sql
文書化されていないセッションオプション(quoted_identifierなど)については、実験に頼らなければならない場合があります。 Solaris x86 Sybase 15インスタンスで次のコマンドを実行すると、「右から3番目のビット」(ゼロからカウント)に変化が見られました
これは興味深い質問であり、Sybaseの管理者として7年ほど経った私には思いもよらなかった質問です。
pjjH
262:1> set quoted_identifier off 262:2> go 263:1> select @@options 263:2> go -------------------------- 80210000800f0144030010 (1 row affected) 264:1> set quoted_identifier on 264:2> go 265:1> select @@options 265:2> go -------------------------- 80210001800f0144030018 (1 row affected) select @@options as options into #foo
他のヒント
sp_dboptionは、設定可能なオプションのリストを提供するか、実際にオプションを設定できます:-
設定可能なオプションの一覧
exec sp_dboption
オプションを設定
sp_dboption pubs2, "unique auto_identity index", true
データベースに設定されているオプションを一覧表示するだけの場合は、sp_helpdbを使用できます
sp_helpdb pubs2
これは複数ページの結果セットを生成しますが、最初のセットには、指名されたデータベースのすべての「true」オプションを示す「status」という列があります。
選択したオプションに設定されている現在の値を照会することができます。
sp_helpdb
プロシージャのコード内にあります。
sybsystemprocsデータベースで sp_helptext
sp_helpdb
を確認できますが、非常に複雑です。