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

Windows Forms Discussion :

Requête SQL avec variables


Sujet :

Windows Forms

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    89
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 89
    Points : 50
    Points
    50
    Par défaut Requête SQL avec variables
    Bonjour,

    J'aimerais effectuer une requête en ayant pour condition des noms de variables. Est ce possible?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
        Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
     
            Dim MyConnexion As OleDbConnection = New OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;Data source=" & _
            "E:\Mes documents\Ben\FS2004\Air Race\Chrono\bd_courses.mdb")
            Dim Mycommand As OleDbCommand = MyConnexion.CreateCommand()
            Mycommand.CommandText = "SELECT COUNT(*) FROM param_course WHERE num_course=2"
            MyConnexion.Open()
            nb_porte = Mycommand.ExecuteScalar()
            MyConnexion.Close()
            Label8.Text = nb_porte
    Exemple, j'aimerais pouvoir modifier le num_course = 2 par num_course = ma_variable en déclarant :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Dim ma_variable As Integer = 2
    Merci d'avance pour l'aide que vous m'apporterez.
    Benoît

  2. #2
    Expert confirmé
    Avatar de Aspic
    Homme Profil pro
    Étudiant
    Inscrit en
    Août 2005
    Messages
    3 905
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Août 2005
    Messages : 3 905
    Points : 4 388
    Points
    4 388
    Par défaut
    Biensur que c'est possible

    Voici un code extrait d'ici si tu veux la source complete :
    Utilisation de Access
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    Private Function Verifier_Doublon(ByVal Champs As String, ByVal Valeur As String) As Boolean
            RequeteSQL = "SELECT * FROM " & NomTable & " WHERE " & Champs & "='" & Valeur & "'"
            Dim Reponse As DataView = Execute() 'retourne la réponse
     
            If Reponse.Count > 0 Then 'si c'est plus grand que 0 alors il y a une reponse et donc c'est un doublon
                Return True
            Else 'sinon on peut l'ajouter
                Return False
            End If
    Qui ne tente rien n'a rien !
    Ce qui ne nous tue pas nous rends plus fort !!
    Mon projet ZELDA en C++/Allegro
    http://www.tutoworld.com - Le Forum -
    Mes ressources Dotnet (cours, sources, tutos)
    --------------------------------------------
    + + =

    Ne pas oublier le Tag !

  3. #3
    En attente de confirmation mail
    Inscrit en
    Août 2006
    Messages
    550
    Détails du profil
    Informations personnelles :
    Âge : 49

    Informations forums :
    Inscription : Août 2006
    Messages : 550
    Points : 669
    Points
    669
    Par défaut
    Tu peux utiliser les paramètres de commande, pour être plus propre ...

    Code vb.net : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
            Dim MyConnexion As OleDbConnection = New OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;Data source=" & _
            "E:\Mes documents\Ben\FS2004\Air Race\Chrono\bd_courses.mdb")
            Dim Mycommand As OleDbCommand = MyConnexion.CreateCommand()
            Mycommand.CommandText = "SELECT COUNT(*) FROM param_course WHERE num_course=@num_course"
     
            Mycommand.Parameters.Add("@num_course", ma_variable)
            MyConnexion.Open()
            nb_porte = Mycommand.ExecuteScalar()
            MyConnexion.Close()
            Label8.Text = nb_porte

  4. #4
    Membre du Club
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    89
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 89
    Points : 50
    Points
    50
    Par défaut
    Merci à tous les deux!!!
    Keplan, ton code fonctionne sous VB2005 à ce détail près :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    sql_nb_porte.Parameters.AddWithValue("@num_course", num_course_selected)
    Autre question, dans le cas ou je fais une requête avec 2 conditions, comment puis je les ajouter dans ce code? Est ce comme cela :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    sql_nb_porte.Parameters.AddWithValue("@num_course", num_course_selected;"@num_porte",num_porte_selected)
    Sinon Aspic, je vais étudier ton tuto parce que je dois réaliser ton un tas de lecture de valeurs dans cette base de données.

    Merci de votre aide!

  5. #5
    En attente de confirmation mail
    Inscrit en
    Août 2006
    Messages
    550
    Détails du profil
    Informations personnelles :
    Âge : 49

    Informations forums :
    Inscription : Août 2006
    Messages : 550
    Points : 669
    Points
    669
    Par défaut
    Ah désolé, je suis en VB 2003, mais tu as compris le principe.

    Sinon pour ta question, tu peux ajouter autant de paramètres que tu veux... (je pense que c'est la même chose en VB 2005)

    Code vb.net : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    sql_nb_porte.Parameters.AddWithValue("@num_course", num_course_selected)
    sql_nb_porte.Parameters.AddWithValue("@num_porte", num_porte_selected)

  6. #6
    Membre du Club
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    89
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 89
    Points : 50
    Points
    50
    Par défaut
    J'en profite pour vous demander votre avis :

    Dans ma base de données Access, j'ai une table "param_course" composée de 11 champs (num_course, num_porte, gate_latitude, gate_longitude, r_action, cap_consigne, cap_marge, etc) et de plusieurs enregistrements...

    J'ai écris un sub qui utilise des variables représentant chacun des champs de la table. Au début, mes variables doivent prendre les valeurs correspondant au premier enregistrement de ma table. Suite à un évènement, mes variables devront prendre les valeurs de l'enregistrement suivant... Etc.

    Que me conseillez vous comme technique... (Je précise que je suis totalement débutant) Je me demande si je ne devrais pas utiliser le DataSet, non?
    Je précise que ce n'est que de la lecture de données.

    Merci d'avance pour vos réponses...

  7. #7
    Expert confirmé
    Avatar de Aspic
    Homme Profil pro
    Étudiant
    Inscrit en
    Août 2005
    Messages
    3 905
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Août 2005
    Messages : 3 905
    Points : 4 388
    Points
    4 388
    Par défaut
    Citation Envoyé par BMT_Benoît
    Sinon Aspic, je vais étudier ton tuto parce que je dois réaliser ton un tas de lecture de valeurs dans cette base de données.
    Avec mon tutos, tu pourras créer ta base de données dynamiquement. Je m'explique :

    - Avec la classe C_BDD, il faut que ta base de donnée existe deja. Ensuite tu n'as qu'a regarder les fonctions dans cette classe et tu pourras ajouter (avec vérification des doublons), supprimer, mettre à jour tous tes elements sans créer une seule requete SQL.

    - Avec la classe C_BDD_New, rien n'est pré-recquis. Tu peux créer ta base, ajouter des tables, le nombre de champs que tu veux, supprimer une table...
    Enfin c'est bien expliqué sur le site

    Et en plus ces deux classes s'adaptent parfaitement à n'importe quelle base de données ACCESS quelque soit le nombre de champs !
    Qui ne tente rien n'a rien !
    Ce qui ne nous tue pas nous rends plus fort !!
    Mon projet ZELDA en C++/Allegro
    http://www.tutoworld.com - Le Forum -
    Mes ressources Dotnet (cours, sources, tutos)
    --------------------------------------------
    + + =

    Ne pas oublier le Tag !

  8. #8
    Membre du Club
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    89
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 89
    Points : 50
    Points
    50
    Par défaut
    Alors, vu que j'ai que de la lecture à faire et que la base de données existe déjà (pas de modifs à faire)... Je vais regarder C_BDD.
    Tu me déconseille le DataSet?

  9. #9
    Expert confirmé
    Avatar de Aspic
    Homme Profil pro
    Étudiant
    Inscrit en
    Août 2005
    Messages
    3 905
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Août 2005
    Messages : 3 905
    Points : 4 388
    Points
    4 388
    Par défaut
    Citation Envoyé par BMT_Benoît
    Alors, vu que j'ai que de la lecture à faire et que la base de données existe déjà (pas de modifs à faire)... Je vais regarder C_BDD.
    Ok tu auras juste à renseigner le nom de ta table avec le nombre de champs et le nom de chaques champs avant de faire toutes modifications de ta table.

    Citation Envoyé par BMT_Benoît
    Tu me déconseille le DataSet?
    Je ne connait pas trop ce controle. Avec ma classe, les resultats des requetes seront données dans une DataView c'est simple d'utilisation pour les débutant (DataSet etant plus compliqué).
    Qui ne tente rien n'a rien !
    Ce qui ne nous tue pas nous rends plus fort !!
    Mon projet ZELDA en C++/Allegro
    http://www.tutoworld.com - Le Forum -
    Mes ressources Dotnet (cours, sources, tutos)
    --------------------------------------------
    + + =

    Ne pas oublier le Tag !

  10. #10
    Rédacteur
    Avatar de SaumonAgile
    Homme Profil pro
    Team leader
    Inscrit en
    Avril 2007
    Messages
    4 028
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : Team leader
    Secteur : Conseil

    Informations forums :
    Inscription : Avril 2007
    Messages : 4 028
    Points : 6 334
    Points
    6 334
    Par défaut
    Je te conseille d'utiliser la méthode de Kelpan, car les classes d'Aspic (même si je respecte le travail) vont t'amener d'énormes problèmes de sécurité, des problèmes avec des valeurs contenant des ' ou des ", et aussi avec les formats des dates.
    Besoin d'un MessageBox amélioré ? InformationBox pour .NET 1.1, 2.0, 3.0, 3.5, 4.0 sous license Apache 2.0.

    Bonnes pratiques pour les accès aux données
    Débogage efficace en .NET
    LINQ to Objects : l'envers du décor

    Mon profil LinkedIn - MCT - MCPD WinForms - MCTS Applications Distribuées - MCTS WCF - MCTS WCF 4.0 - MCTS SQL Server 2008, Database Development - Mon blog - Twitter

  11. #11
    Expert confirmé
    Avatar de Aspic
    Homme Profil pro
    Étudiant
    Inscrit en
    Août 2005
    Messages
    3 905
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Août 2005
    Messages : 3 905
    Points : 4 388
    Points
    4 388
    Par défaut
    Citation Envoyé par SaumonAgile
    Je te conseille d'utiliser la méthode de Kelpan, car les classes d'Aspic (même si je respecte le travail) vont t'amener d'énormes problèmes de sécurité, des problèmes avec des valeurs contenant des ' ou des ", et aussi avec les formats des dates.
    Pour les valeurs en date, il n'y a pas de probleme si on met la date sous forme de string : 15/02/2007 ou alors 15 fevrier 2007.

    En ce qui concerne les valeurs avec des " ou ', je n'ai pas essayer mais avec des anteslash ca devrait fonctionner : Exemple : comment \"va tu\" ou alors peut etre avec les doubles guillemets : comment ""va tu""

    Voila, je vais voir quand j'aurais le temps comment on peut résoudre ce probleme , mais bon c'est pas tout le temps qu'on enregistre des elements avec des guillemets simples ou doubles !
    Qui ne tente rien n'a rien !
    Ce qui ne nous tue pas nous rends plus fort !!
    Mon projet ZELDA en C++/Allegro
    http://www.tutoworld.com - Le Forum -
    Mes ressources Dotnet (cours, sources, tutos)
    --------------------------------------------
    + + =

    Ne pas oublier le Tag !

  12. #12
    Rédacteur
    Avatar de SaumonAgile
    Homme Profil pro
    Team leader
    Inscrit en
    Avril 2007
    Messages
    4 028
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : Team leader
    Secteur : Conseil

    Informations forums :
    Inscription : Avril 2007
    Messages : 4 028
    Points : 6 334
    Points
    6 334
    Par défaut
    Citation Envoyé par Aspic
    Pour les valeurs en date, il n'y a pas de probleme si on met la date sous forme de string : 15/02/2007 ou alors 15 fevrier 2007.
    Tu devrais pourtant savoir, depuis le temps que tu es sur le forum, que cette approche est très sale.
    Elle ne gère pas les différents format de date, et ne fonctionne que sur un système avec une culture française.
    Citation Envoyé par Aspic
    En ce qui concerne les valeurs avec des " ou ', je n'ai pas essayer mais avec des anteslash ca devrait fonctionner : Exemple : comment \"va tu\" ou alors peut etre avec les doubles guillemets : comment ""va tu""
    Idem.
    Citation Envoyé par Aspic
    Voila, je vais voir quand j'aurais le temps comment on peut résoudre ce probleme , mais bon c'est pas tout le temps qu'on enregistre des elements avec des guillemets simples ou doubles !
    Certes mais cela ne résoud par les trous de sécurité (béants).
    Pendant toute la période où tu n'as pas le temps de corriger, tu proposes ton code à des débutants qui vont prendre ce code comme référence. Dans ce cas tu devrais au moins faire les mises en garde d'usage, en précisant que ce code est plein de failles de sécurité et qu'il ne doit pas être utilisé en l'état.
    Besoin d'un MessageBox amélioré ? InformationBox pour .NET 1.1, 2.0, 3.0, 3.5, 4.0 sous license Apache 2.0.

    Bonnes pratiques pour les accès aux données
    Débogage efficace en .NET
    LINQ to Objects : l'envers du décor

    Mon profil LinkedIn - MCT - MCPD WinForms - MCTS Applications Distribuées - MCTS WCF - MCTS WCF 4.0 - MCTS SQL Server 2008, Database Development - Mon blog - Twitter

  13. #13
    Expert confirmé
    Avatar de Aspic
    Homme Profil pro
    Étudiant
    Inscrit en
    Août 2005
    Messages
    3 905
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Août 2005
    Messages : 3 905
    Points : 4 388
    Points
    4 388
    Par défaut
    Citation Envoyé par SaumonAgile
    Tu devrais pourtant savoir, depuis le temps que tu es sur le forum, que cette approche est très sale.
    Elle ne gère pas les différents format de date, et ne fonctionne que sur un système avec une culture française.
    C'est une approche comme une autre. Ma classe ne gère pas les types des champs. Elle ne gère que le type "String", mais on peut très bien mettre des nombres ou des dates... Je ne vois pas où est le soucis. Biensur j'aurais pu créer une classe avec la gestion des types mais pour l'instant je n'ai pas beaucoup de temps. Désolé
    Citation Envoyé par SaumonAgile
    Certes mais cela ne résoud par les trous de sécurité (béants).
    Pendant toute la période où tu n'as pas le temps de corriger, tu proposes ton code à des débutants qui vont prendre ce code comme référence. Dans ce cas tu devrais au moins faire les mises en garde d'usage, en précisant que ce code est plein de failles de sécurité et qu'il ne doit pas être utilisé en l'état.
    Mon code est loin d'etre parfait c'est une classe comme une autre avec ses avantages et ses inconvénients. Je n'ai jamais eu de retour négatif sur mes classes donc j'en conclu que le probleme de guillemets n'est pas primordiale.

    De plus, justement je propose mon code pour les débutants et pour cause, c'est parce que c'est un code pour débutants ! Assez facile à comprendre (pas tout le temps je l'avoue surtout pour ces deux classes ) mais surtout très simple d'utilisation.

    En conclusion, BMT_Benoît est libre de choisir ce qu'il veut ! Ce n'est pas un probleme Ma classe a beaucoup de fonctionnalités mais peut etre qu'il n'en a pas besoin Je lui ai tout de meme proposé pour l'aider et je ne regrette jamais d'aider des gens
    Qui ne tente rien n'a rien !
    Ce qui ne nous tue pas nous rends plus fort !!
    Mon projet ZELDA en C++/Allegro
    http://www.tutoworld.com - Le Forum -
    Mes ressources Dotnet (cours, sources, tutos)
    --------------------------------------------
    + + =

    Ne pas oublier le Tag !

  14. #14
    Rédacteur
    Avatar de SaumonAgile
    Homme Profil pro
    Team leader
    Inscrit en
    Avril 2007
    Messages
    4 028
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : Team leader
    Secteur : Conseil

    Informations forums :
    Inscription : Avril 2007
    Messages : 4 028
    Points : 6 334
    Points
    6 334
    Par défaut
    Citation Envoyé par Aspic
    Tout ce que tu as dit
    Je suis entièrement d'accord avec toi, je ne remets absolument pas en cause l'aide que tu apportes. Je tenais simplement à te faire remarquer que si tu mets en avant les avantages de ton code (il y en a), n'oublie pas non plus de préciser les inconvénients (il y en a aussi).
    C'est très important, surtout pour un débutant de savoir, ce qui est bon et ce qui l'est moins (remarque le côté diplomate de la tournure ^^).
    Besoin d'un MessageBox amélioré ? InformationBox pour .NET 1.1, 2.0, 3.0, 3.5, 4.0 sous license Apache 2.0.

    Bonnes pratiques pour les accès aux données
    Débogage efficace en .NET
    LINQ to Objects : l'envers du décor

    Mon profil LinkedIn - MCT - MCPD WinForms - MCTS Applications Distribuées - MCTS WCF - MCTS WCF 4.0 - MCTS SQL Server 2008, Database Development - Mon blog - Twitter

  15. #15
    Expert confirmé
    Avatar de Aspic
    Homme Profil pro
    Étudiant
    Inscrit en
    Août 2005
    Messages
    3 905
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Août 2005
    Messages : 3 905
    Points : 4 388
    Points
    4 388
    Par défaut
    Citation Envoyé par SaumonAgile
    Je suis entièrement d'accord avec toi, je ne remets absolument pas en cause l'aide que tu apportes. Je tenais simplement à te faire remarquer que si tu mets en avant les avantages de ton code (il y en a), n'oublie pas non plus de préciser les inconvénients (il y en a aussi).
    .
    Pour tout te dire je n'etais pas au courant pour l'histoire des guillemets

    Maintenant que tu me l'a fait remarqué, je vais essayer de trouver une solution mais tu en a peut etre deja une
    Qui ne tente rien n'a rien !
    Ce qui ne nous tue pas nous rends plus fort !!
    Mon projet ZELDA en C++/Allegro
    http://www.tutoworld.com - Le Forum -
    Mes ressources Dotnet (cours, sources, tutos)
    --------------------------------------------
    + + =

    Ne pas oublier le Tag !

  16. #16
    Rédacteur
    Avatar de SaumonAgile
    Homme Profil pro
    Team leader
    Inscrit en
    Avril 2007
    Messages
    4 028
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : Team leader
    Secteur : Conseil

    Informations forums :
    Inscription : Avril 2007
    Messages : 4 028
    Points : 6 334
    Points
    6 334
    Par défaut
    Citation Envoyé par Aspic
    Pour tout te dire je n'etais pas au courant pour l'histoire des guillemets

    Maintenant que tu me l'a fait remarqué, je vais essayer de trouver une solution mais tu en a peut etre deja une
    Yep, j'ai nommé le (roulement de tambour) : IDataParameter


    Et au fait, BMT_Benoît, quand tu dis :
    Keplan, ton code fonctionne sous VB2005 à ce détail près :
    Peux tu décrire ce qui ne fonctionne pas ? Problème de compilation ? Exception à l'exécution ? On va tout de même essayer de résoudre ton problème
    Besoin d'un MessageBox amélioré ? InformationBox pour .NET 1.1, 2.0, 3.0, 3.5, 4.0 sous license Apache 2.0.

    Bonnes pratiques pour les accès aux données
    Débogage efficace en .NET
    LINQ to Objects : l'envers du décor

    Mon profil LinkedIn - MCT - MCPD WinForms - MCTS Applications Distribuées - MCTS WCF - MCTS WCF 4.0 - MCTS SQL Server 2008, Database Development - Mon blog - Twitter

  17. #17
    Expert confirmé
    Avatar de Aspic
    Homme Profil pro
    Étudiant
    Inscrit en
    Août 2005
    Messages
    3 905
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Août 2005
    Messages : 3 905
    Points : 4 388
    Points
    4 388
    Par défaut
    Citation Envoyé par Aspic
    En ce qui concerne les valeurs avec des " ou ', je n'ai pas essayer mais avec des anteslash ca devrait fonctionner : Exemple : comment \"va tu\" ou alors peut etre avec les doubles guillemets : comment ""va tu""
    OUps j'ai une bonne nouvelle !!

    Ca marche très bien dans mon code pour les guillemets ^^
    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
     
     Private WithEvents test As New C_BDD_New
            Dim tab_val(3) As String
            tab_val(0) = "champs_1"
            tab_val(1) = "champs_2"
            tab_val(2) = "champs_3"
            tab_val(3) = "champs_4"
     
            Dim tab_valeur(3) As String
            tab_valeur(0) = "cool"
            tab_valeur(1) = "raoul"
            tab_valeur(2) = "snif"
            tab_valeur(3) = "az"
     
            Dim tab_valeur_2(3) As String
            tab_valeur_2(0) = "0123456789//***---++++"
            tab_valeur_2(1) = "ébauché"
            tab_valeur_2(2) = "ASpic@point.fre::::::!!!!,,,,????"
            tab_valeur_2(3) = "comment ""va tu"""
     
            test.SupprimerBase("C:\test.mdb")
            test.CreerBase("C:\test.mdb")
            test.CreerTable("test", tab_val)
            test.AjouterElement("test", tab_valeur)
            test.AjouterElement("test", tab_valeur_2)
     
            MsgBox("finish")
    Et la preuve en image donc y'a pas de probleme dans ma classe
    Qui ne tente rien n'a rien !
    Ce qui ne nous tue pas nous rends plus fort !!
    Mon projet ZELDA en C++/Allegro
    http://www.tutoworld.com - Le Forum -
    Mes ressources Dotnet (cours, sources, tutos)
    --------------------------------------------
    + + =

    Ne pas oublier le Tag !

  18. #18
    Rédacteur
    Avatar de SaumonAgile
    Homme Profil pro
    Team leader
    Inscrit en
    Avril 2007
    Messages
    4 028
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : Team leader
    Secteur : Conseil

    Informations forums :
    Inscription : Avril 2007
    Messages : 4 028
    Points : 6 334
    Points
    6 334
    Par défaut
    Tu as essayé avec les ' et pas les " ?
    Besoin d'un MessageBox amélioré ? InformationBox pour .NET 1.1, 2.0, 3.0, 3.5, 4.0 sous license Apache 2.0.

    Bonnes pratiques pour les accès aux données
    Débogage efficace en .NET
    LINQ to Objects : l'envers du décor

    Mon profil LinkedIn - MCT - MCPD WinForms - MCTS Applications Distribuées - MCTS WCF - MCTS WCF 4.0 - MCTS SQL Server 2008, Database Development - Mon blog - Twitter

  19. #19
    Membre du Club
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    89
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 89
    Points : 50
    Points
    50
    Par défaut
    Et bien, merci pour ces précisons. Personnellement, j'arrive à comprendre le fonctionnement du code de Keplan. C'est moins évident pour moi avec les classes que tu proposes Aspic... Je précise que j'apprends ce langage un peu en fonction des problèmes que je rencontres. C'est encore un peu confu pour moi tout cela... mais avec vos conseils, je pourrais avancer.

    J'en reviens donc à mon petit prog...

    Pour le code de Keplan, d'après ce que j'ai compris, sous VB2003, il faut écrire :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    sql_nb_porte.Parameters.Add("@num_course", num_course_selected)
    alors que sous VB2005 (j'suis en Visual Basic 2005 Express Edition), il faut écrire :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    sql_nb_porte.Parameters.AddWithValue("@num_course", num_course_selected)
    Mais ce problème est résolu...

    Comme je vous l'ais dit dans un précédent message,
    J'en profite pour vous demander votre avis :

    Dans ma base de données Access, j'ai une table "param_course" composée de 11 champs (num_course, num_porte, gate_latitude, gate_longitude, r_action, cap_consigne, cap_marge, etc) et de plusieurs enregistrements...

    J'ai écris un sub qui utilise des variables représentant chacun des champs de la table. Au début, mes variables doivent prendre les valeurs correspondant au premier enregistrement de ma table. Suite à un évènement, mes variables devront prendre les valeurs de l'enregistrement suivant... Etc.
    Je me demande si je devrais pas utiliser un DataSet, non?
    Dataview peut être? L'un comme l'autre, je ne les connais pas... J'ai donc pas d'apriori sur ces deux techniques...

    Merci d'avance pour vos conseils.
    Benoît

  20. #20
    Rédacteur
    Avatar de SaumonAgile
    Homme Profil pro
    Team leader
    Inscrit en
    Avril 2007
    Messages
    4 028
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : Team leader
    Secteur : Conseil

    Informations forums :
    Inscription : Avril 2007
    Messages : 4 028
    Points : 6 334
    Points
    6 334
    Par défaut
    Citation Envoyé par BMT_Benoît
    Comme je vous l'ais dit dans un précédent message,

    Je me demande si je devrais pas utiliser un DataSet, non?
    Dataview peut être? L'un comme l'autre, je ne les connais pas... J'ai donc pas d'apriori sur ces deux techniques...
    Je n'ai pas bien compris ce que tu souhaitais faire (peut-être suis-je stupide ).
    Peux tu préciser s'il te plait ?
    Mais d'après ce que j'ai compris, le DataSet me semble une solution convenable.
    Besoin d'un MessageBox amélioré ? InformationBox pour .NET 1.1, 2.0, 3.0, 3.5, 4.0 sous license Apache 2.0.

    Bonnes pratiques pour les accès aux données
    Débogage efficace en .NET
    LINQ to Objects : l'envers du décor

    Mon profil LinkedIn - MCT - MCPD WinForms - MCTS Applications Distribuées - MCTS WCF - MCTS WCF 4.0 - MCTS SQL Server 2008, Database Development - Mon blog - Twitter

+ Répondre à la discussion
Cette discussion est résolue.
Page 1 sur 2 12 DernièreDernière

Discussions similaires

  1. Syntaxe pour requête SQL avec variables
    Par molibri dans le forum MS SQL Server
    Réponses: 2
    Dernier message: 27/07/2010, 14h50
  2. [MySQL] requête SQL avec variables non renseignées
    Par Boris56 dans le forum PHP & Base de données
    Réponses: 4
    Dernier message: 08/03/2010, 14h50
  3. Requête SQL avec variable externe
    Par Kesle dans le forum Bases de données
    Réponses: 15
    Dernier message: 15/05/2009, 18h14
  4. [MySQL] Requête SQL avec variable
    Par kate59 dans le forum PHP & Base de données
    Réponses: 2
    Dernier message: 16/04/2008, 14h12
  5. Problème avec requête SQL avec variables
    Par harry25 dans le forum ASP
    Réponses: 1
    Dernier message: 03/01/2007, 03h41

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