7
votes

Comment puis-je savoir dans SQL quel nom db je suis connecté à

Nous avons un environnement de contrôle des changements dans lequel les développeurs donnent des scripts pour modifier les personnes de contrôle pour courir. Nous avons dev, qa et environnements de production.

Je veux conditionnaliser quelques segments pour faire des choses différentes selon lesquelles la base de données de la commande de contrôle de changement exécute mon script. P>

If @dbname='dev'
then
begin
 --do some dev stuff
end
If @dbname='QA'
then
begin
 --do some qa stuff
end
If @dbname='Prod'
then
begin
 --do some production stuff
end


3 commentaires

C'est bon (si un petit suspect) au niveau de la DBA, mais si vous êtes dans le groupe de développeurs, c'est pur maléfique - ne le faites tout simplement pas.


Les réponses ci-dessous vous donnent le "comment", mais je suis d'accord avec Joel. Cela demande des problèmes sur la route.


C'est pour la sécurité surtout. Les DB sont de retour rafraîchis de la production. Devs ne sont pas autorisés dans la production. J'ajoute de manière programtielle les utilisateurs de Dev aux environs Qa et Dev Environs et les personnes QA à A QA Environ dans le cadre des scripts et ne touchent pas la sécurité dans l'environnement de production.


3 Réponses :


6
votes

Sélectionnez db_name () devrait faire le tour.


0 commentaires

6
votes

Utilisez la fonction système db_name () xxx


1 commentaires

C'était parfaitement synchronisé de répondre, n'est-ce pas? :-)



13
votes

Je pense que c'est juste comme: xxx


1 commentaires

J'ai dû choisir une réponse et "ho" répondit en premier. Merci tout le monde si /