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 :

utilisation du caractere de continuation sous vb.net


Sujet :

VB.NET

  1. #1
    Membre du Club
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mars 2011
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Maroc

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Transports

    Informations forums :
    Inscription : Mars 2011
    Messages : 4
    Par défaut utilisation du caractere de continuation sous vb.net
    Bonjour à tous
    lors de l'ecriture du code d'une application je me suis trouve avec une longue instruction. J'ai essaye de la repartir sur plusieurs lignes.
    J'ai ecrit l'instruction suivantes :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    command = New SqlCommand("INSERT INTO " _
                & "AFFECETVOL(PASSAGER,VOL,DATEVOL,NUMPLACE," _
                & "PRIX,CLASSE) VALUES(" _
    & "txtBoxCodePassager.Text & ","" _
    & TxtBoxCodeVol.Text & "," & TxtBoxDateVol.Text & _
    & "," & TxtBoxNumeroPlace.Text & "," & " _
    TxtBoxClasse.Text & ")", connexion)
    mais le compilateur me signale des erreurs dans le code ci-dessus
    Quelqu'un pouvais me donner des regles pour repartir les longues instruction sur plusieurs lignes
    Merci pour votre aide

  2. #2
    Modérateur
    Avatar de Sankasssss
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Novembre 2006
    Messages
    1 842
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Novembre 2006
    Messages : 1 842
    Par défaut
    Bonsoir,
    Il te faut utiliser des requêtes paramètrées, de cette manière tu évite la concaténation de chaîne et tu aura une auto gestion des injections SQL...

    On peux voir que tu te trompes sur les éléments en rouge :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    command = New SqlCommand("INSERT INTO " _
    & "AFFECETVOL(PASSAGER,VOL,DATEVOL,NUMPLACE," _
    & "PRIX,CLASSE) VALUES(" _
    & "txtBoxCodePassager.Text & "," " _
    & TxtBoxCodeVol.Text & "," & TxtBoxDateVol.Text  & _ 
    & "," & TxtBoxNumeroPlace.Text & "," & " _
    TxtBoxClasse.Text & ")", connexion)
    que tu aurais du mettre comme ca (les couleurs sont automatique ici) :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    command = New SqlCommand("INSERT INTO " _
    & "AFFECETVOL(PASSAGER,VOL,DATEVOL,NUMPLACE," _
    & "PRIX,CLASSE) VALUES(" _
    & txtBoxCodePassager.Text & "," _
    & TxtBoxCodeVol.Text & "," & TxtBoxDateVol.Text  _
    & "," & TxtBoxNumeroPlace.Text & "," & _
    TxtBoxClasse.Text & ")", connexion)
    en effet il y a trois quote en trop et un symbole &.

    Il y a aussi une variable prix que tu ne remplis pas dans les values, en effet il y a 6 paramètres après AFFECETVOL et seulement cinq après VALUES

    De plus, vu qu'il n'y a aucun symbole '
    Je serais tenter de dire que soit :
    - tout les éléments sont des integer
    - tu as oublié les ' sur les éléments varChar

    Pour éviter cela, il y a les requêtes paramétrées :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    command = New SqlCommand( _
    "INSERT INTO AFFECETVOL" _ 
    & "(PASSAGER,VOL,DATEVOL,NUMPLACE,PRIX,CLASSE)" _
    & " VALUES(" _
    & "@CodePassager, @CodeVol, @DateVol, @NumeroPlace, @Prix, @Classe)", connexion)
    command.parameters.add("@CodePassager", SqlDbType.Integer).values = txtBoxCodePassager.Text
    command.parameters.add("@CodeVol", SqlDbType.Integer).values = TxtBoxCodeVol.Text
    command.parameters.add("@DateVol", SqlDbType.Date).values = TxtBoxDateVol.Text
    command.parameters.add("@NumeroPlace", SqlDbType.Integer).values = TxtBoxNumeroPlace.Text
    command.parameters.add("@Prix", SqlDbType.Decimal).values = ' Ton textBox de prix
    command.parameters.add("@Classe", SqlDbType.Integer).values = TxtBoxClasse.Text
    Un peu d'attention pour le nombre de paramètre et ce sera bon

Discussions similaires

  1. comment afficher un msg box sous asp.net en utilisant c#
    Par Khalid.bounouader dans le forum ASP.NET
    Réponses: 4
    Dernier message: 27/08/2008, 17h36
  2. Réponses: 3
    Dernier message: 23/04/2008, 00h17
  3. Réponses: 13
    Dernier message: 16/10/2007, 14h17
  4. DLL Delphi utilisée sous VB.NET
    Par slimjoe dans le forum Langage
    Réponses: 2
    Dernier message: 09/01/2006, 00h12
  5. Utiliser Borland C++ avec Emacs sous Windows
    Par Eikichi dans le forum Autres éditeurs
    Réponses: 2
    Dernier message: 02/03/2003, 08h40

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