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 6 et antérieur Discussion :

Problème d'insertion dans une BD en Vb Poo


Sujet :

VB 6 et antérieur

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Étudiant
    Inscrit en
    Mai 2008
    Messages
    149
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2008
    Messages : 149
    Par défaut Problème d'insertion dans une BD en Vb Poo
    Bonjour à tous ! Je viens vous demander conseil car je suis un peu perdue. Je m'explique :

    Pour un projet de BTS, je dois réaliser un programme sous vb en Programmation Orientée Objet. Nous avons déjà vu en cours les bases mais dans mon projet je dois pouvoir insérer des données dans une BDD :

    J'ai mis en place un héritage :
    Dans la base de données, il est représenté comme celà :

    - Pour la classe mère : Destination (Numerodestination, datedépart, durée, nbpersonnes)
    - Pour les classes filles : Etranger (NoDestination, le pays)
    France (NoDestination, departement, ville)

    Le code pour l'héritage entre la classe mère et les classes filles est bon, mais j'ai un problème pour l'insertion.
    En effet, quand le formulaire pour insérer une nouvelle destination est remplie les informations sur la destination s'insère dans la table DESTINATION mais si je veux enregistrer le Numero de destination dans la classe fille, il faut obligatoirement que je renseigne le numero de la destination dans un text box Autrement il y a une erreur (erreur logique car les classe filles sont relié à la classe mère par "NoDest")

    J'ai créer une classe PASSERELLE pour l'insertion voilà le code (je met le code pour la classe fille FRANCE pour exemple) :

    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
      Public Shared Sub EnregistrementDestinationF(ByVal numdest As Integer, ByVal unedest As france)
     
            Dim cnn As New OleDbConnection
            Dim cmd As New OleDbCommand
            'Dim undep As france
            'Dim drr As OleDbDataReader
     
            cnn.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & Application.StartupPath & "\bdvoyage.mdb"
            cnn.Open()
            cmd.Connection = cnn
     
     
            cmd.CommandText = "INSERT INTO france VALUES (" & numdest & ", '" & unedest.regiond & "', '" & unedest.villed & "')"
            cmd.ExecuteNonQuery()
            cnn.Close()
    End Sub
    Et dans le code du formulaire :

    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
     Private Sub BtnAjouterD_Click(...)
                If RdoFrance.Checked = True Then
                    If RdoAvion.Checked = True Then
                        unedestination = New Destination(TxtNoDest.Text, TxtDateD.Text, TxtDureeD.Text, TxtNbPlaceD.Text, TxtPrix.Text, "Avion")
                        unFrance = New france(TxtNoDest.Text, TxtDateD.Text, TxtDureeD.Text, TxtNbPlaceD.Text, TxtPrix.Text, "Avion", TxtRegion.Text, TxtVille.Text)
                    Else
                        unedestination = New Destination(TxtNoDest.Text, TxtDateD.Text, TxtDureeD.Text, TxtNbPlaceD.Text, TxtPrix.Text, "Train")
                        unFrance = New france(TxtNoDest.Text, TxtDateD.Text, TxtDureeD.Text, TxtNbPlaceD.Text, TxtPrix.Text, "Train", TxtRegion.Text, TxtVille.Text)
                    End If
                    Passerelle.EnregistrementDestination(unedestination)
                    Passerelle.EnregistrementDestinationF(unedestination.numerodestination, unFrance)
                    lesdestinations.Add(unFrance)
                    lesdestinations.Add(unedestination)
     
                End If
        End Sub
    Voilà mon dode, désolé pour la longueur... Si vous avez une réponse à ma question, j'en serais très réconnaissante !

    Merci d'avance !
    Ps : En pièce jointe, je vous met le formulaire
    Images attachées Images attachées  

Discussions similaires

  1. [VB6/mysql]:Problème d'insertion dans une bdd
    Par gaetan.tranvouez dans le forum VB 6 et antérieur
    Réponses: 5
    Dernier message: 14/06/2006, 10h15
  2. [MySQL] Problème d'insertion dans une table
    Par ph_anrys dans le forum PHP & Base de données
    Réponses: 7
    Dernier message: 06/03/2006, 17h43
  3. problème d'insertion dans une base de données
    Par belmansour tidjani dans le forum JDBC
    Réponses: 7
    Dernier message: 18/01/2006, 22h13
  4. Problème d'insertion dans une table MYSQL
    Par greg69 dans le forum Requêtes
    Réponses: 4
    Dernier message: 24/10/2005, 11h34
  5. probléme d'insert dans une page asp !
    Par tomtom25 dans le forum ASP
    Réponses: 5
    Dernier message: 31/03/2005, 16h04

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