Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum. Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !

REMPLIR UN DATAGRID AVEC UN DATASET !


Information sur la source

Catégorie :ASP.Net Source .NET ( DotNet ) Classé sous : datagrid, dataset, sql, access Niveau : Débutant Date de création : 16/11/2003 Vu : 19 237

Note :
1 / 10 - par 1 personne
1,00 / 10

  • 1

  • 2

  • 3

  • 4

  • 5

  • 6

  • 7

  • 8

  • 9

  • 10

Commentaire sur cette source (8)
Ajouter un commentaire et/ou une note

Description

Suite au tutorial de "vieux lion" avec son remplissage d'un datagrid via une liaison de donnée simple , cette source permet de remplir un datagrid via un dataset ; Pourquoi un dataset ? simplement parce que grace au dataset vous pourraient parametrer votre datagrid pour la pagination et le tri....
 

Source

  • Sub ChargerDatagrid()
  • Dim strConn As String = "PROVIDER=Microsoft.Jet.OLEDB.4.0;DATA SOURCE=" & Server.MapPath("BDD/NOM_DE_VOTRE_BDD.mdb") & ";"
  • Dim Conn1 As New OleDb.OleDbConnection()
  • Conn1 = New OleDb.OleDbConnection(strConn)
  • Conn1.Open()
  • Dim Rd As OleDb.OleDbDataAdapter
  • Dim data As New Data.DataSet()
  • Dim strsql As String
  • strsql = "VOTRE REQUETE SQL"
  • Rd = New OleDb.OleDbDataAdapter(strsql, Conn1)
  • data = New Data.DataSet()
  • Rd.Fill(data)
  • DataAgence.DataSource = data
  • DataAgence.DataBind()
  • data.Dispose()
  • Conn1.Close()
  • End Sub
Sub ChargerDatagrid()

        Dim strConn As String = "PROVIDER=Microsoft.Jet.OLEDB.4.0;DATA SOURCE=" & Server.MapPath("BDD/NOM_DE_VOTRE_BDD.mdb") & ";"
        
        Dim Conn1 As New OleDb.OleDbConnection()

        Conn1 = New OleDb.OleDbConnection(strConn)
        Conn1.Open()

        Dim Rd As OleDb.OleDbDataAdapter
        Dim data As New Data.DataSet()
        Dim strsql As String

        strsql = "VOTRE REQUETE SQL"
       
        Rd = New OleDb.OleDbDataAdapter(strsql, Conn1)
        data = New Data.DataSet()
        Rd.Fill(data)

        DataAgence.DataSource = data
        DataAgence.DataBind()

        data.Dispose()
        Conn1.Close()

    End Sub

Conclusion

voilà ! il n'y a pas de commentaire mais le code est comprehensible ! bien sûr le contrôle datagrid est tres complet ... et il reste à expliquer par exemple le generateur de propriété , les colonnes de modeles , l'edition du ligne...... surment dans un prochain tuto ;-)
 

Commentaires et avis

signaler à un administrateur
Commentaire de jesusonline le 16/11/2003 17:02:54 administrateur CS

ca m'a l'air plutot bien et surtout c'est très simple donc facile à comprendre y'a juste une truc que je comprend pas :
tu mets :
Dim data As New Data.DataSet()
ca veut dire que tu déclares un nouveau dataset alors pourkoi tu le déclares encore une fois avec la ligne
data = New Data.DataSet()
il a pas bougé alors je vois pas pourkoi on le redefinirais je pense que cette ligne est donc inutile mais j'ai pas essayé le code et je suis pas sur de moi, c'est donc pour ca que j'aimerais que tu m'expliques :)
@+

signaler à un administrateur
Commentaire de frentchy le 16/11/2003 20:07:44

C EST DU .NET CA?

signaler à un administrateur
Commentaire de fatalbert le 17/11/2003 10:00:30

tu peut aussi virer "Dim data As New Data.DataSet()" et tu remplaces
"data = New Data.DataSet()" par : "Dim data = New Data.DataSet()" moi je prefere faire comme ça .. c plus clair ! mais le 1er code ne veut surtout pas dire que tu declares 2 fois une variable ou un objet !
contrairement a asp 3.0 tout doit etre declarer ! essai de virer "Dim data As New Data.DataSet()" du code tu verra le resultat !
et oui frentchy c de l'asp.net..... methoe pour remplir un controle datagrid

signaler à un administrateur
Commentaire de fabrice69 le 17/11/2003 11:04:29 administrateur CS

C'est une méthode très simple qui n'est valable que dans une seule situation, si le dataset en question ne contient qu'une seule datatable.
Ce qui est le cas dans la situation présentée (La table a l'index N° 0).

En revanche si tu avais plusieurs DataTable dans ton DataSet, je pense qu'il prendrait celui avec le N°0 ou qu'il te retournerait une erreur.

De plus le New fait 2 fois de suite est inutile. Lors de la création Dim toto as New Dataset() suffit à typer et initialiser la variable.

F___

signaler à un administrateur
Commentaire de fatalbert le 17/11/2003 20:18:30

tout a fait d'accord pour la declaration de variable mais ça je l'est dit juste avant (reponse à jesusonline) .
Mais je comprends pas du tout pourkoi tu parles de datable ! les resultats du dataset dependent SEULEMENT de ta reqûete sql ! peu tu m eclairsir sur ce point merci !

signaler à un administrateur
Commentaire de fabrice69 le 18/11/2003 22:22:56 administrateur CS

Simplement un DataSet est un ensemble de DataTable

On peut représenter ca simplement (comme pour une base de données) :
- Le DataSet sera la Base elle-même
- La (ou les) DataTable(s) sera(ont) les Tables de la Base.

Tu as un article en FR qui te le présente (rapidement) ici :
- http://vmaviel.free.fr/dotNET/chap2.htm

F___

signaler à un administrateur
Commentaire de fatalbert le 18/11/2003 23:13:23

bah si ta requete est composée de jointure ! je voit pas ou est le probleme !
en faite je voit pas pourkoi tu as posé ce post ... oui car c une methode pour remplir un datagrid ... qu'on peut retrouver sur le msdn de microsoft !
c une source pour les debutants qui veulent se servir d un control datagrid ! voila voila .....

signaler à un administrateur
Commentaire de keops31 le 20/09/2005 16:02:19

OK
Mais comment fait-on pour afficher dans un même datagrid les données de PLUSIEURS datatable d'un seul dataset ?

J'ai essayé de créer une datarelation. Mais lors de l'affichage des colonnes, le datagrid va chercher les colonnes seulement dans la datatable mère !

Pour info : j'ai essayé maDatagrid.DataSource = ds.Tables("TableMere") et même maDatagrid.DataSource = ds, mais toujours le même problème..

Vous avez la réponse ?
Merci d'avance

Ajouter un commentaire

Discussions en rapport avec ce code source dans le forum

Requête SQL, Access et Oracle [ par Zeus ] Problème:Je passe une variable "no_groupe" en paramètre entre deux pages web de la page qui reçois la variable je veux l'utiliser dans une requête SQL Probleme avec une requete SQL vers la base de donnée ACCESS !! [ par Seven ] bon voila, ça fait une heure que je me chicane ak ASP, bref voila le bug, j'ai une base de donnée, je vais qui trie le résultat par rapport a une requ Requete Access [ par polz ] Hello mon sauveur(e)Enfin, je suis un débutant en aspx. J'aimerai faire un connection sur une bd access et exécuter un requete dans un datagrid. Que l sql vers access [ par astt ] Reprendre un exemple de code .net s'appuyant sur une data base SQL server et l'utiliser avec une base access, voila un beau challenge . Je me demande access vs sql [ par astt ] Reprendre un exemple de code .net s'appuyant sur une data base SQL server et l'utiliser avec une base access, voila un beau challenge . Je me demande SQL séléction au hasard d'un enregistrement d'une table access [ par txR_ch ] Salut,je cherche déséspérement la requête SQL pour access qui séléctionne un enregistrement (ou une ligne) au hasardJe sais que c'est possible pour my dataset+datagrid [ par aurelie ] Mon problème est le suivant, je veux mettre les enregistrements d'un dataset dans un datagrid mais je veux gérer plusieurs pages, c-à-d que si on a pl UPDATE dans ACCESS [ par Titrax ] Voila mon programme :SQL="UPDATE Personne SET Connect='1' WHERE Nom='" & Pseudo & "';"Set RS=Server.CreateObject("ADODB.RECORDSET")RS.Open SQL,Baseet exporter une base SQL server [ par sbertrand ] bonjour,J'utilise access XP pour me connecter sur ma base SQL server.Le probleme c'est qu'a chaque modif d'une ligne, access envoi une requete au serv Est-il possible d'effectuer des requetes SQL dans un dataset [ par patvail ] Salut everybodyComme le sujet l'indique, je cherche à faire une requete sql dans un dataset qui contient déja des valeurs d'une base de données.Si qq'


Nos sponsors

Sondage...

CalendriCode

Décembre 2008
LMMJVSD
1234567
891011121314
15161718192021
22232425262728
293031    

Consulter la suite du CalendriCode



Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel BAÏSE, Merci à Vincent pour ses précieux conseils
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés
Temps d'éxécution de la page : 0,374 sec

Google Coop CodeS-SourceS Google Coop CodeS-SourceS


Certaines images présentes sur le site (notament certains avatars) sont issues des collections IconShock, donc si vous souhaitez utiliser ces icons vous devez les acheter, ne les copiez pas et ne utilisez pas dans vos sites et applications sans les avoir commandé.