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 :

comment nommer les datatables extraitent d'un xml dans un dataset?


Sujet :

VB.NET

  1. #1
    Inactif
    Profil pro
    Inscrit en
    Février 2007
    Messages
    15
    Points
    11
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : Maroc

    Informations forums :
    Inscription : Février 2007
    Messages : 15
    Points : 11
    Par défaut comment nommer les datatables extraitent d'un xml dans un dataset?
    bonjour a tous
    alors voila
    pour pouvoir reporter les données d'un xml dans une base de données locale, je dois creer des datatables avec les données du XML;

    cela est tres facile, je l'ai fais!!

    mnt, le comble est la masse des datatables, vu qu'ils sont nombreux, et qu'elles portent pas de noms (car il n'y a pas d'instruction 'dataadapter.fill(dataset,"nom_table")', les tables sont reconu dans le dataset par des indexes, ainsi on les reference de suit : datatable=dataset.tables(0), au lieu de datatable=dataset.tables("nom-table"))a un certain moment, et avec une 30aine de table, on tiendré plus le coups, croyez moi, !! en plus, on ne pourra pas faire d'update a la base si tu n'as pas le nom de la table temporaire dans le dataset.

    la question est :"comment nommer ces tables temporaire pourris dans le dataset pour pouvoir les exploiter et recopier leurs contenus"


    un p'tit Help serai le bienvenu

  2. #2
    Membre actif Avatar de More
    Inscrit en
    Janvier 2007
    Messages
    252
    Points
    268
    Détails du profil
    Informations personnelles :
    Âge : 39

    Informations forums :
    Inscription : Janvier 2007
    Messages : 252
    Points : 268
    Par défaut
    salut,

    si ta table par ex porte le nom table1, tu peut dans la renommer dans le fill et mettre
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    DataAdapter.Fill(dataset,"ma_table")
    ou n'importe quel nom car le dataset va prendre le resultat de ta requete avec le nom que vous avez mis, c'est tout.


    Bonne chance

  3. #3
    Inactif
    Profil pro
    Inscrit en
    Février 2007
    Messages
    15
    Points
    11
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : Maroc

    Informations forums :
    Inscription : Février 2007
    Messages : 15
    Points : 11
    Par défaut
    Je viens de recevoir la premiere reponse depuis hier sur le site
    merci bcp, c'est vraiment gentil
    mais malheureusement, dans le code, il n'y a pas de dataAdapter, car je lis avec l'instruction dataset.readXml("d:\\fichier.xml").
    dans ce cas, le datatable est est remplit par datatable=dataset.Tables("table1")
    il m'ai tjr impossible de la nommer!
    y a t il pa une autre methode!!?
    merci

  4. #4
    Membre actif Avatar de More
    Inscrit en
    Janvier 2007
    Messages
    252
    Points
    268
    Détails du profil
    Informations personnelles :
    Âge : 39

    Informations forums :
    Inscription : Janvier 2007
    Messages : 252
    Points : 268
    Par défaut
    je crois que tu peux la modifier, mais en tout cas c'est pas un probleme de mettre le nom propre de la table, explique-moi si je ne comprend pas

  5. #5
    Inactif
    Profil pro
    Inscrit en
    Février 2007
    Messages
    15
    Points
    11
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : Maroc

    Informations forums :
    Inscription : Février 2007
    Messages : 15
    Points : 11
    Par défaut le code
    alor voila mon code pourri:
    dataset.ReadXml("d:\\ista.xml")

    datatable = dataset.Tables(0).Copy //là je realise ma copy de la table 'xml' dans le dataset, sans pouvoir la nommer
    Dim i As Integer
    i = 0
    For Each datarow In datatable .Rows
    lst.Items.Add(dr(0) & " " & dr(1) & " " & dr(2))
    i = i + 1
    Next
    //ici je ne fais que verifier la lecture

    Dim o As New SqlCommandBuilder(dataadapter)
    dataadapter.Update(ds)


    //updaté est cependant impossible, car la table ne porte pa de nom, ainsi ce qui suit serai voulu:
    Dim o As New SqlCommandBuilder(dataadapter)
    dataadapter.Update(ds,"table1")



    j'éspere que vous avez compri mon problème!!!
    merci pour vos efforts mr...?

  6. #6
    Membre actif Avatar de More
    Inscrit en
    Janvier 2007
    Messages
    252
    Points
    268
    Détails du profil
    Informations personnelles :
    Âge : 39

    Informations forums :
    Inscription : Janvier 2007
    Messages : 252
    Points : 268
    Par défaut
    je crois que le probleme est dans l'update ? j'ai une propostion pour toi : pourquoi tu ne met pas ta table dans Datatable et tu parcourru tout simplement le dataset. et tu met ton update directement

  7. #7
    Inactif
    Profil pro
    Inscrit en
    Février 2007
    Messages
    15
    Points
    11
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : Maroc

    Informations forums :
    Inscription : Février 2007
    Messages : 15
    Points : 11
    Par défaut pourkoi pa ;)
    ca pourrai marché, pourrai tu m'expliquer plus, ou menvoyer un extrait de code de preference!!
    j'étais contente de recevoir tes salutations, really
    merci!

  8. #8
    Membre actif Avatar de More
    Inscrit en
    Janvier 2007
    Messages
    252
    Points
    268
    Détails du profil
    Informations personnelles :
    Âge : 39

    Informations forums :
    Inscription : Janvier 2007
    Messages : 252
    Points : 268
    Par défaut
    voici un code pour parcourir ton dataset :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    For i = 0 To DataSet.Tables(0).Rows.Count - 1
                MsgBox(DataSet.Tables(0).Rows(i).Item(1))
            Next
    teste le et repond moi.

    Bonne chance

  9. #9
    Membre actif Avatar de DarkMolo
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    207
    Points
    277
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : Maroc

    Informations forums :
    Inscription : Juillet 2006
    Messages : 207
    Points : 277
    Par défaut
    Salut,
    La classe DataTable comporte un membre de type String qui fournira une réponse à ta requête, j'ai nommé TableName qu'on peut définir à sa guise:
    Code VB.NET : Sélectionner tout - Visualiser dans une fenêtre à part
    MaDataTable.TableName="NomDeMaDataTable"

    Est-ce bien, ce que tu cherches ?

  10. #10
    Inactif
    Profil pro
    Inscrit en
    Février 2007
    Messages
    15
    Points
    11
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : Maroc

    Informations forums :
    Inscription : Février 2007
    Messages : 15
    Points : 11
    Par défaut Thank you
    Merci bcp DarkMolo!!

    Enfet, tu m'a fais pensé que la table pouvait avoir un nom definit lors du remplissage du dataset, et c'est le cas
    Il ne fallait pas renomer la table, mes l'appelé par le nom de la balise xml qui qui lui correspond!

    merci encore une fois!

    Bouchra

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

Discussions similaires

  1. Comment nommer les versions d'une application
    Par Bweb dans le forum Langages de programmation
    Réponses: 10
    Dernier message: 15/02/2013, 16h07
  2. Réponses: 28
    Dernier message: 08/10/2009, 19h10
  3. Réponses: 2
    Dernier message: 22/02/2009, 14h02
  4. comment associer les couleur a un document xml avec xslt
    Par moh_yougo dans le forum XSL/XSLT/XPATH
    Réponses: 1
    Dernier message: 30/01/2006, 17h08
  5. Réponses: 3
    Dernier message: 01/04/2005, 10h37

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