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

VB.NET Discussion :

Exécution de deux requetes sql simultanées . ça marche ?


Sujet :

VB.NET

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre actif
    Homme Profil pro
    Chargé de commercialisation
    Inscrit en
    Août 2013
    Messages
    46
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Chargé de commercialisation
    Secteur : Bâtiment

    Informations forums :
    Inscription : Août 2013
    Messages : 46
    Par défaut Exécution de deux requetes sql simultanées . ça marche ?
    Bonjour tout le monde,

    après avoir écumé les sites web sur comment récupérer un ID du dernier enregistrement effectué par un utilisateur précis, et après avoir trouvé la réponse, je dois matérialiser ma requête en VB.NET. voici un exemple de 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
    26
    27
    28
     Dim oConn As MySqlConnection
            Dim myCommand As New MySqlCommand
            Dim Cave As String
            'Dim Financement As String
            'Dim Stationnement As String
            Dim asciA As String
            Dim tyPecuisineus As String
     
     
     
            oConn = New MySqlConnection()
     
            oConn.ConnectionString = "server =127.0.0.1;user id=sample; password='sample';database= PMV"
            myCommand.Connection = oConn
            mycommand.commandtext = "INSERT INTO foo  VALUES('"&0&"','"& text1.text &"');"                
     
     
     
            Try
                oConn.Open()
                myCommand.ExecuteNonQuery()
     
            Catch myerror As MySqlException
                MessageBox.Show("Error Connecting to Database: " & myerror.Message)
            Finally
                oConn.Dispose()
            End Try
        End Sub

    dans la ligne mycommand.commandtext puis je rajouter ceci ?:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    mycommand.commandtext = "INSERT INTO foo  VALUES('"&0&"','"& text1.text &"');"  &  "INSERT INTO foo2 (foo2.fid,foo2.text) 
    VALUES('LAST_INSERT_ID()'&",'"&text1.text&"');"
    merci pour votre retour!

  2. #2
    Membre actif
    Inscrit en
    Octobre 2010
    Messages
    109
    Détails du profil
    Informations forums :
    Inscription : Octobre 2010
    Messages : 109
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    VALUES('LAST_INSERT_ID()'&"
    marche chez vous ?

    sinon pour ta question quand tu exécute les 2 requêtes que est ce que ça donne erreur , exception rien dite nous afin de vous mieux aider

  3. #3
    Membre actif
    Homme Profil pro
    Chargé de commercialisation
    Inscrit en
    Août 2013
    Messages
    46
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Chargé de commercialisation
    Secteur : Bâtiment

    Informations forums :
    Inscription : Août 2013
    Messages : 46
    Par défaut
    Pour être honnête je n ai pas encore testé je ne suis pas devant mon environnement de dev. Je testerai ça ce soir et ferai de toute façon un retour

    En théorie d après certains documents que j ai vue traitant last insert id cela fonctionne. De plus le code de la requête est directement récupéré du site web mysql

    La seule chose en fait qui m'interressait dans cette question est: est ce que la syntax est / semble correcte ?

  4. #4
    Membre actif
    Homme Profil pro
    Chargé de commercialisation
    Inscrit en
    Août 2013
    Messages
    46
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Chargé de commercialisation
    Secteur : Bâtiment

    Informations forums :
    Inscription : Août 2013
    Messages : 46
    Par défaut
    je viens de voir votre commentaire avec plus de détails: merci je n'avais pas vue que j'avais sorti la virgule des guillemets! et non du coup ça ne marchera pas merci!

  5. #5
    Rédacteur
    Avatar de Nathanael Marchand
    Homme Profil pro
    Expert .Net So@t
    Inscrit en
    Octobre 2008
    Messages
    3 615
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Expert .Net So@t
    Secteur : Conseil

    Informations forums :
    Inscription : Octobre 2008
    Messages : 3 615
    Par défaut
    Citation Envoyé par manuly Voir le message
    est ce que la syntax est / semble correcte ?
    Non ! Les concaténations pour écrire des requêtes c'est le mal absolu.
    Plusieurs tutos et articles existent sur ce site afin de comprendre comment écrire correctement une requête SQL. Il existe ce qu'on appelle des paramètres et des commandes sql.

  6. #6
    Expert éminent Avatar de Pol63
    Homme Profil pro
    .NET / SQL SERVER
    Inscrit en
    Avril 2007
    Messages
    14 204
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : .NET / SQL SERVER

    Informations forums :
    Inscription : Avril 2007
    Messages : 14 204
    Par défaut
    mettre plusieurs requetes dans un commandtext est possible avec sql server, mais l'exécution n'est pas simultannée
    c'est chacun son tour, si une erreur de sévérité supérieure à 10 se produit sur l'une des requete ca sort et la fin n'est pas exécutée
    voir les transactions pour annuler en cas le début en cas de plantage sur l'une des requetes

    il est aussi possible de changer le commandtext et de refaire un execute
    Cours complets, tutos et autres FAQ ici : C# - VB.NET

  7. #7
    Membre actif
    Homme Profil pro
    Chargé de commercialisation
    Inscrit en
    Août 2013
    Messages
    46
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Chargé de commercialisation
    Secteur : Bâtiment

    Informations forums :
    Inscription : Août 2013
    Messages : 46
    Par défaut
    merci à vous je vais regarder de ce coté là alors ^^ 1 virer les concaténations , 2 utiliser une transaction. merci

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

Discussions similaires

  1. Exécuter Deux Requete SQL Lors d'un Click Sur Bouton
    Par sisiniya dans le forum VB.NET
    Réponses: 3
    Dernier message: 23/06/2010, 17h30
  2. Mixage de deux requetes SQL
    Par Myogtha dans le forum Requêtes et SQL.
    Réponses: 0
    Dernier message: 05/11/2007, 12h59
  3. Problème d'exécution d'une requete SQL
    Par new dotnet(c#) dans le forum Struts 1
    Réponses: 2
    Dernier message: 26/07/2007, 19h51
  4. Réponses: 5
    Dernier message: 21/06/2007, 14h31
  5. Réponses: 1
    Dernier message: 28/06/2006, 16h07

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