Как запросить значение параметра сервера в Sybase? - PullRequest
1 голос
/ 05 мая 2009

Например, если я хочу узнать текущее значение опции сервера quoted_identifier, есть ли запрос, который может дать мне эту информацию?

Ответы [ 3 ]

2 голосов
/ 29 мая 2009

Некоторые из опций уровня сеанса доступны вам как varbinary через переменную @@ options. Некоторое руководство по интерпретации битовой маски дает

http://manuals.sybase.com/onlinebooks/group-as/asg1250e/sqlug/@Generic__BookTextView/41423;pt=42621

и

http://www.isug.com/Sybase_FAQ/ASE/code/sp_helpoptions.sql

Для параметров сеанса, которые не документированы (например, quoted_identifier), вам, возможно, придется прибегнуть к экспериментам. Я выполнил следующее на экземпляре Solaris x86 Sybase 15 и увидел изменение «третьего бита справа» (считая с нуля)

Это интересный вопрос, который не возникал у меня за семь или около того лет работы администратора Sybase.

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

1 голос
/ 11 мая 2009

sp_dboption может дать вам список настраиваемых параметров или фактически установить параметр: -

Список настраиваемых параметров

exec sp_dboption

установить опцию

sp_dboption pubs2, "unique auto_identity index", true

Если вы просто хотите перечислить параметры, установленные на БД, вы можете использовать sp_helpdb

sp_helpdb pubs2

Это дает многостраничный набор результатов, но в первом наборе есть столбец с именем «status», в котором отображаются все «истинные» параметры в назначенной базе данных.

0 голосов
/ 31 августа 2009

Можно запросить текущее значение, установленное для выбранной опции.

Это в коде sp_helpdb процедуры.

Вы можете проверить sp_helptext sp_helpdb в базе данных sybsystemprocs, но это очень сложно.

...