IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

C# Discussion :

[MS-SQL Server & C#] Requête vérification l'existance d'une DB


Sujet :

C#

  1. #1
    Membre actif
    Inscrit en
    Octobre 2007
    Messages
    236
    Détails du profil
    Informations personnelles :
    Âge : 45

    Informations forums :
    Inscription : Octobre 2007
    Messages : 236
    Points : 233
    Points
    233
    Par défaut [MS-SQL Server & C#] Requête vérification l'existance d'une DB
    Salut les ami(e)s
    J'ai un code qui vérifit l'existance d'une DB MS SQL Server qui marche sous Management Studio et la même ne marche pas quand je l'intégre au code C#!!!
    Voici le code C# :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
     
                SqlConnection scn = new SqlConnection(Properties.Settings.Default.fwgcConnectionString);
                SqlCommand scm = scn.CreateCommand();
                scm.CommandText = "IF EXISTS (SELECT name FROM sys.databases WHERE name = N'fwgc') SET @exist = 1; ELSE SET @exist = 0;";
                SqlParameter sp = scm.CreateParameter();
                sp.ParameterName = "@exist";
                sp.DbType = DbType.Int32;
                sp.Direction = ParameterDirection.Output;
                scm.Parameters.Add(sp);
                scn.Open();
                scm.ExecuteNonQuery();
                scn.Close();
                if((int)sp.Value == 0) {
                    // DB NON existante, installer la DB à nouveau...
                }
    La requête SQL retourne 1 sous MS SQL Server Management Studio mais retourne 0 quand elle exécuté dans le code ci-dessus!!!

    Merci pour votre aide

  2. #2
    Membre actif
    Inscrit en
    Octobre 2007
    Messages
    236
    Détails du profil
    Informations personnelles :
    Âge : 45

    Informations forums :
    Inscription : Octobre 2007
    Messages : 236
    Points : 233
    Points
    233
    Par défaut Blem était dans la connexion string
    Le problème était dans la connexion string!
    J'ai remplacé la connexion string vers la bd par celle-ci :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Data Source=.\SQLEXPRESS;Integrated Security=True;Connect Timeout=30
    J'ai aussi changé le code. Voici la nouvelle version :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
                SqlConnection scn = new SqlConnection(Properties.Settings.Default.srvrConnexionString);
                SqlCommand scm = scn.CreateCommand();
                scm.CommandText = "SELECT name FROM sys.databases WHERE name = N'fwgc'";
                scn.Open();
                scn.ChangeDatabase("master");
                object o = scm.ExecuteScalar();
                scn.Close();
                if(o == null) {
                    // Base de données non trouvée!
                }

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 2
    Dernier message: 27/05/2008, 08h33
  2. SQL Server : problème de requête sur server lié oracle
    Par stever50 dans le forum Langage SQL
    Réponses: 4
    Dernier message: 26/03/2008, 12h06
  3. [sql server]2 colonnes identiques lors du résultat d'une requête.
    Par maxlegrand dans le forum MS SQL Server
    Réponses: 4
    Dernier message: 26/06/2007, 22h59
  4. [Sql Server 8.0]Requête dans une chaîne avec Cursor à executer
    Par Nicodemus dans le forum MS SQL Server
    Réponses: 2
    Dernier message: 02/11/2006, 17h34
  5. SQL Server 7.0 - Requête Select
    Par sangokus dans le forum MS SQL Server
    Réponses: 4
    Dernier message: 23/03/2004, 10h32

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo