Comment interroger la valeur d'une option de serveur dans Sybase?
Question
Par exemple, si je souhaite connaître la valeur actuelle de l'option de serveur quoted_identifier
, existe-t-il une requête pouvant me fournir ces informations?
La solution
Certaines des options de niveau session sont disponibles sous forme de varbinary via la variable @@ options. Quelques conseils sur l’interprétation du masque de bits sont donnés par
et
http://www.isug.com/Sybase_FAQ/ASE/code /sp_helpoptions.sql
Pour les options de session non documentées (telles que quoted_identifier), vous devrez peut-être recourir à l'expérimentation. J'ai exécuté ce qui suit sur une instance de Solaris x86 Sybase 15 et j'ai constaté une modification du "troisième bit à partir de la droite" (en partant de zéro)
C’est une question intéressante et qui ne m’était jamais venue à l’esprit depuis mes sept ans environ d’administrateur 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
Autres conseils
sp_dboption peut vous donner une liste d’options réglables ou bien définir l’option: -
Liste des options réglables
exec sp_dboption
définir une option
sp_dboption pubs2, "unique auto_identity index", true
Si vous souhaitez simplement répertorier les options définies sur une base de données, vous pouvez utiliser sp_helpdb
sp_helpdb pubs2
Ceci donne un ensemble de résultats de plusieurs pages, mais le premier ensemble contient une colonne appelée "statut" qui affiche toutes les options "vraies" de la base de données désignée.
Il est possible d'interroger la valeur actuelle définie pour l'option sélectionnée.
Il est dans le code de la procédure sp_helpdb
.
Vous pouvez vérifier sp_helptext
sp_helpdb
dans la base de données sybsystemprocs, mais cela est très compliqué.