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

Développement SQL Server Discussion :

Créer une BDD SQL server 2008 R2 à partir du code dans VB Express 2010 [2008R2]


Sujet :

Développement SQL Server

  1. #1
    Membre régulier
    Homme Profil pro
    Enseignant
    Inscrit en
    Mars 2017
    Messages
    138
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Enseignant
    Secteur : Enseignement

    Informations forums :
    Inscription : Mars 2017
    Messages : 138
    Points : 77
    Points
    77
    Par défaut Créer une BDD SQL server 2008 R2 à partir du code dans VB Express 2010
    Bonjour à tous,
    Je précise d'emblée que je suis débutant donc ne m'en voulez pas si je semble à côté de la plaque ...
    Voilà j'ai créer une application sur VB 2010 Express qui utilise une BDD SQL server 2008 R2. J'ai donc créé ma BDD directement dans le Management studio de SQL server 2008 R2 et tout fonctionne bien.
    Maintenant je souhairerais pouvoir créer ma BDD directement dans le code de mon appli sans passer par Management studio.
    J'ai consulté le cours de Philippe LASSERE mais je n'y arrive pas.
    Voilà mon code :

    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
    16
    17
    18
    19
     
    LigneDOSSIER.SOURCE="localhost"
    LigneDOSSIER.BDDSQL="Essai"
    LigneDOSSIER.LOGIN="sa"
    LigneDOSSIER.MDP="PWD"
     
    ConnexionString = "Data Source=" & LigneDOSSIER.SOURCE & ";Initial Catalog=" & LigneDOSSIER.BDDSQL & ";User Id=" & LigneDOSSIER.LOGIN & ";Password=" & LigneDOSSIER.MDP & ";" & "Integrated Security=SSPI"
     
            Dim strSQL As String = "IF EXISTS (" & "SELECT * " & "FROM master..sysdatabases " & "WHERE Name = 'HowToDemo')" & vbCrLf & "DROP DATABASE HowToDemo" & vbCrLf & "CREATE DATABASE test"
     
            Connexion = New SqlConnection(ConnexionString)
     
            Dim cmd As New SqlCommand(strSQL, Connexion)
     
            Connexion.Open()
     
            cmd.ExecuteNonQuery()
     
            Connexion.Close()
    J'ai le message "Impossible d'ouvrir la base de données "Essai" demandée par la connexion. La connexion a échoué."

    Comme je n'y connais pas grand chose, je dois avoir fait n'importe quoi. Quelqu'un pourrait-il m'aider en me filant un code corrigé ?

    Un grand merci d'avance ...

  2. #2
    Invité
    Invité(e)
    Par défaut
    Bonjour, je ne pense pas que ce soit une si bonne idée que ça de créer une base de données par programmation même si cela reste possible, le mieux serait de faire la manipulation en vous connectant vous même à MSSQL.

    Si vous voulez créer une base de données par programmation, la 1ere question qui se pose est de savoir si votre compte utilisateur a les droits d’exécuter une telle requête et même si ce compte utilisateur a les droits, vous avez également la gestion des utilisateurs, des autorisations, et tout et tout.

    Concernant le soucis de connexion par programmation, faites vous même le test de connexion par l'interface, si ça ne marche pas, c'est que les identifiants ne sont pas les bons

  3. #3
    Membre régulier
    Homme Profil pro
    Enseignant
    Inscrit en
    Mars 2017
    Messages
    138
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Enseignant
    Secteur : Enseignement

    Informations forums :
    Inscription : Mars 2017
    Messages : 138
    Points : 77
    Points
    77
    Par défaut
    J'ai déjà créé une base par l'intermédiaire du manager et mes identifiant et mot de passe sont corrects. Là maintenant il s'agit pour moi de créer d'autres bases automatiquement par programmation ... Donc je pense que mon code n'est pas correct et c'est à ce sujet que je demande de l'aide. ..

  4. #4
    Invité
    Invité(e)
    Par défaut
    justement, créer une base de données n'est pas la seule chose à faire, il faut que vous vous connectiez à MSSQL avec un compte utilisateur ayant les droits d'administrer les bdd, et il faudra autoriser l'accès à votre nouvelle base de données, et ça, par programmation, c'est presque mission impossible.

    Si vous ne savez pas administrer les bases de données, vous allez devoir vous rendre dans la section Administration

  5. #5
    Membre régulier
    Homme Profil pro
    Étudiant
    Inscrit en
    Septembre 2013
    Messages
    100
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Cameroun

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Septembre 2013
    Messages : 100
    Points : 110
    Points
    110
    Par défaut
    Je tombe sur cette discussion un peu tard . alors il est question pour notre débutant de créer une base de données par le code VB.net, c'est très bien possible. Mais c'est du boulots, La première des choses en exécutant ton application, il faut le faire en tant qu'administrateur
    Voici un test: importer l'espace de nom sql
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    dim cn=  new sqlconnection("server=.\sqlepress; database=""; integrated sécurité="SSPI"")
    cn.open
    Dim SQL as string="use master GO create database nom_base "
    Dim cmd =new sqlcommand(sql,cn)
    cmd.executenonquery()
    cn.close
    Essaye ceci et on verra une autre manière complète d'avancer

  6. #6
    Membre régulier
    Homme Profil pro
    Enseignant
    Inscrit en
    Mars 2017
    Messages
    138
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Enseignant
    Secteur : Enseignement

    Informations forums :
    Inscription : Mars 2017
    Messages : 138
    Points : 77
    Points
    77
    Par défaut
    Bonjour et merci doubleface2

    J'ai essayé ton code et j'obtiens ceci :
    Nom : Capture d'écran 2018-01-08 21.41.37.png
Affichages : 284
Taille : 11,8 Ko

  7. #7
    Invité
    Invité(e)
    Par défaut
    @Feliperennes : pour mettre le caractère double quote dans une chaine, il faut :
    1) soit mettre 4 doubles quotes à la suite
    2) soit en disant que le caractère double quote a pour code ASCII le 34, ainsi, faire comme cela :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    dim connectionString as string = "server=.\sqlepress; database=" & Convert.ToChar(34) & Convert.ToChar(34) & "; integrated security=" & Convert.ToChar(34) & "SSPI" & Convert.ToChar(34)
    dim cn=  new sqlconnection(connectionString)

  8. #8
    Membre régulier
    Homme Profil pro
    Enseignant
    Inscrit en
    Mars 2017
    Messages
    138
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Enseignant
    Secteur : Enseignement

    Informations forums :
    Inscription : Mars 2017
    Messages : 138
    Points : 77
    Points
    77
    Par défaut
    Bonjour et merci romulus001

    J'ai donc modifié mon code pour tenir compte de la contribution de romulus001
    J'obtiens ceci :
    Nom : Capture d'écran 2018-01-09 20.27.48.png
Affichages : 367
Taille : 36,2 Ko

  9. #9
    Invité
    Invité(e)
    Par défaut
    La syntaxe de la chaine de connexion est plutôt comme cela :
    Persist Security Info=False;Integrated Security=SSPI;database=AdventureWorks;server=(local)
    Pas besoin de mettre des doubles quotes. Souce

  10. #10
    Membre régulier
    Homme Profil pro
    Étudiant
    Inscrit en
    Septembre 2013
    Messages
    100
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Cameroun

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Septembre 2013
    Messages : 100
    Points : 110
    Points
    110
    Par défaut
    j'avais omis dans la chaîne une erreur, en corrigeant ca donne ceci, voici un code complet que j'ai écrit et testé pour toi avec création d'une table
    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
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
     
    'ceration de la base
     Try
                Dim cn As New SqlConnection("server=.\sqlexpress;database=;integrated security=SSPI")
                cn.Open()
                Dim sql As String = "CREATE database test1"
                Dim cmd As New SqlCommand(sql, cn)
                cmd.ExecuteNonQuery()
                cn.Close()
                MsgBox("bien")
     
     
            Catch ex As Exception
                MsgBox(ex.Message)
            End Try
    'création d une table dans la base
            Try
                Dim cn As New SqlConnection("server=.\sqlexpress;database=test1;integrated security=SSPI")
                cn.Open()
                Dim sql As String = "CREATE table client(nom varchar(60),tel varchar(60))"
                Dim cmd As New SqlCommand(sql, cn)
                cmd.ExecuteNonQuery()
                cn.Close()
                MsgBox("bien")
     
     
            Catch ex As Exception
                MsgBox(ex.Message)
            End Try

  11. #11
    Invité
    Invité(e)
    Par défaut
    il vous manque la base de données à laquelle vous vous connectez.
    Lisez cet article ou celui ci

  12. #12
    Membre régulier
    Homme Profil pro
    Enseignant
    Inscrit en
    Mars 2017
    Messages
    138
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Enseignant
    Secteur : Enseignement

    Informations forums :
    Inscription : Mars 2017
    Messages : 138
    Points : 77
    Points
    77
    Par défaut
    Merci Doubleface2,

    J'ai recopié ton code et j'ai ce message d'erreur

    Nom : Capture d'écran 2018-02-05 22.44.36.png
Affichages : 222
Taille : 8,4 Ko

  13. #13
    Invité
    Invité(e)
    Par défaut
    Exemple de chaine de connexion à SQL Server :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Persist Security Info=False;Integrated Security=SSPI;Data Source=xxxxxx;Initial Catalog=xxxxxx
    Bien entendu, il ne vous reste plus qu'à compléter les croix

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

Discussions similaires

  1. Réponses: 3
    Dernier message: 22/02/2016, 16h03
  2. [Débutant] Gestion des rôles et authentification (couple identificateur stocké dans une BDD SQL Server 2008)
    Par Afaf001 dans le forum Windows Presentation Foundation
    Réponses: 0
    Dernier message: 16/09/2014, 13h07
  3. importer une table d'une BDD a une autre SQL SERVER 2008
    Par InfOCynO dans le forum MS SQL Server
    Réponses: 4
    Dernier message: 03/08/2012, 15h05
  4. Réponses: 2
    Dernier message: 28/05/2011, 14h01
  5. Problème de connexion à une BDD SQL SERVER 2008
    Par idris dans le forum Accès aux données
    Réponses: 1
    Dernier message: 08/09/2010, 16h37

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