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 Windows Discussion :

Ecrire dans une Base de données simplement


Sujet :

Développement Windows

  1. #1
    Membre à l'essai
    Homme Profil pro
    Architecte matériel
    Inscrit en
    Septembre 2015
    Messages
    23
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Architecte matériel

    Informations forums :
    Inscription : Septembre 2015
    Messages : 23
    Points : 11
    Points
    11
    Par défaut Ecrire dans une Base de données simplement
    Bonjour,

    Je cherche depuis un moment comment manier une base de donnée SQL server en VB sur Visual Studio 2015 et je galère !!

    A force de tester et lire tout je ne suis arrivé à rien.

    Pour faire simple, j'ai sur une form deux textBox et un bouton enregistrement.
    L'idée c'est d'enregistrer les infos des textbox en cliquant sur enregistrement dans ma base de donnée et dans ma table nommée tructable.


    Si quelqu'un avait une piste sérieuse avec un exemple cela m'aiderait a avancer.

    Merci

  2. #2
    Membre expérimenté
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Juillet 2005
    Messages
    562
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Saône et Loire (Bourgogne)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Distribution

    Informations forums :
    Inscription : Juillet 2005
    Messages : 562
    Points : 1 511
    Points
    1 511
    Par défaut
    Bonjour,

    Pour 'manier' une base de donnée, il faut que tu commences par ouvrir une connexion vers ta base de données, puis exécuter une requête et enfin fermer la connexion.
    C'est exactement l'exemple donné dans la page msdn de SQLCommand.
    Tu devras utiliser au moins la classe SQLConnection et SQLCommand puis soit un SqlDataAdapter soit un SqlDataReader, le permier pour obtenir une DataTable, le deuxième pour parcourir les résultats de la requête.
    Clairement commence juste par faire le test du lien, juste un select pour commencer. Une fois que ce petit test sera ok alors le gros du boulot sera fait, puisqu'il validera la connexion à ta base, et dans un premier temps il y a beaucoup de chose qui peuvent entraver cette connexion (pb d'accès au serveur, pb de droit sur la base ....)

    Du coup l'idée serait que tu nous proposes les bouts de code que tu as en nous signalant les problèmes ou éventuelles exceptions reçues.

    Bon code,
    J@ck.
    Pas de réponse par MP, merci.

    Penser au ça fait plaisir

  3. #3
    Membre à l'essai
    Homme Profil pro
    Architecte matériel
    Inscrit en
    Septembre 2015
    Messages
    23
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Architecte matériel

    Informations forums :
    Inscription : Septembre 2015
    Messages : 23
    Points : 11
    Points
    11
    Par défaut "La propriété ConnectionString n'a pas été initialisée."}
    J'ai repris le 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
    20
    21
    22
    23
    24
    25
     
     
    Imports System.Data.SqlClient
    Imports Microsoft.VisualBasic
     
     
     
     
    Dim queryString As String = "SELECT OrderID, CustomerID FROM dbo.Orders;"
    Dim etiquettesConnectionString As String = Nothing
     
     Using connection As New SqlConnection(etiquettesConnectionString)
     Dim command As New SqlCommand(queryString, connection)
     
                connection.Open()
                Dim reader As SqlDataReader = command.ExecuteReader()
                Try
                    While reader.Read()
                        Console.WriteLine(String.Format("{0}, {1}", reader(0), reader(1)))
                    End While
                Finally
                    ' Always call Close when done reading.
                    reader.Close()
                End Try
            End Using

    en essayant de l'adapter à mon idée mais j'ai un message d'erreur
    "La propriété ConnectionString n'a pas été initialisée."}

  4. #4
    Membre expert Avatar de jopopmk
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mars 2011
    Messages
    1 856
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2011
    Messages : 1 856
    Points : 3 570
    Points
    3 570
    Par défaut
    Salut,

    la variable etiquettesConnectionString ne doit pas être null (ou Nothing en VB), elle doit contenir les informations permettant de se connecter à ton instance de SQLServer. Pour ce SGBD elle doit ressembler à un truc du genre :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Dim cnxStr As String "Server=adresse_du_serveur;Database=nom_base_de_donnees;User Id=nom_utilisateur;Password=mot_de_passe;"
    Il faudra bien évidemment mettre les valeurs correspondant à ta propre connexion.

    Bon dev.
    Plus je connais de langages, plus j'aime le C.

  5. #5
    Membre à l'essai
    Homme Profil pro
    Architecte matériel
    Inscrit en
    Septembre 2015
    Messages
    23
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Architecte matériel

    Informations forums :
    Inscription : Septembre 2015
    Messages : 23
    Points : 11
    Points
    11
    Par défaut Toujours en recherche
    Salut !

    J'ai modifié la variable etiquettesConnectionString mais j'ai une base de données SQL serveur avec authentification windows et sans mot de passe.
    Du coup quand j'execute mon code le message

    Une erreur liée au réseau ou spécifique à l'instance s'est produite lors de l'établissement d'une connexion à SQL Server. Le serveur est introuvable ou n'est pas accessible. Vérifiez que le nom de l'instance est correct et que SQL Server est configuré pour autoriser les connexions distantes. (provider: Named Pipes Provider, error: 40 - Impossible d'ouvrir une connexion à SQL Server)

    me bloque.

  6. #6
    Membre expert Avatar de jopopmk
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mars 2011
    Messages
    1 856
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2011
    Messages : 1 856
    Points : 3 570
    Points
    3 570
    Par défaut
    Re,

    suivant ta config la chaîne de connexion peut varier grandement.
    Tu trouveras différents formats pour SQL Server sur connectionstrings.com
    Peut-être faudra-t-il indiquer un nom de domaine avant le nom de l'utilisateur, peut-être faudra-t-il indiquer qu'il s'agit d'une trusted connection, ou encore virer l'attribut Password ... n'y connaissant pas grand chose à SQL Server spécifiquement je te laisse tester les différentes formes de chaînes de connection présentées dans le lien au-dessus.

    Bonne recherche.
    Plus je connais de langages, plus j'aime le C.

  7. #7
    Membre expérimenté
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Juillet 2005
    Messages
    562
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Saône et Loire (Bourgogne)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Distribution

    Informations forums :
    Inscription : Juillet 2005
    Messages : 562
    Points : 1 511
    Points
    1 511
    Par défaut
    Bonjour,

    Je suis dans le même cas que jopopmk, je n'y connais pas grand chose à la config d'un SQL serveur...
    Je rajouterais juste qu'avant de jouer avec la connectionString assure toi que ton serveur est accessible sur le réseau, avec les bons ports d'ouverts... etc.
    Du coup je me dis que tu pourrais déjà tester avec sqlCmd dans un terminal, une fois connecté ainsi tu ne devrais plus trop avoir de mal avec ta chaine de connexion.
    Après si vraiment tu galères il faudra peut être trouver des infos auprès d'admin plutôt que de développeurs. Comme je te l'ai dit plus haut cette étape est sans doute assez compliquée à passer quand on est débutant mais lorsqu'elle sera passée tu pourras avancer beaucoup plus rapidement dans ton projet.

    Bon courage,
    J@ck.
    Pas de réponse par MP, merci.

    Penser au ça fait plaisir

Discussions similaires

  1. Ecrire dans une base de données sql server
    Par mims1664 dans le forum VBScript
    Réponses: 1
    Dernier message: 21/03/2011, 12h50
  2. Ecrire dans une base de données
    Par abdias1976 dans le forum Langage
    Réponses: 1
    Dernier message: 11/03/2010, 08h20
  3. Ecrire dans une base de données
    Par collysamin dans le forum C++Builder
    Réponses: 2
    Dernier message: 16/06/2008, 22h18
  4. Ecrire dans une Base de donnée
    Par Djaiii dans le forum C
    Réponses: 26
    Dernier message: 28/05/2008, 14h32
  5. Ecrire dans une base de données Mysql depuis Excel
    Par poupi dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 08/02/2007, 17h05

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