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 !

RÉCUPÉRER LE NOM DES TABLES D'UNE BASE DE DONNÉES ACCESS ET AFFICHER DANS UNE LISTBOX


Information sur la source

Catégorie :Base de données Source .NET ( DotNet ) Classé sous : access Niveau : Débutant Date de création : 22/03/2005 Vu : 14 350

Note :
2 / 10 - par 2 personnes
2,00 / 10

  • 1

  • 2

  • 3

  • 4

  • 5

  • 6

  • 7

  • 8

  • 9

  • 10

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

Description

ce petit morceau de code permet de récuperer le nom des tables d'une BD Access et de les afficher dans une ListBox
j'ai juste voulu publier cette source à causes des problemes que j'ai eu a trouver la solution en c#!!!
 

Source

  • using System.Data.OleDb;
  • using System.Data;
  • using System.Collections;
  • //
  • //Methodes de récupéraion des noms de Tables
  • //
  • public DataTable GetTables(OleDbConnection conn)
  • {
  • conn.Open();
  • DataTable schemaTable = conn.GetOleDbSchemaTable(OleDbSchemaGuid.Tables,
  • new object[] {null, null, null, "TABLE"});
  • conn.Close();
  • return schemaTable;
  • }
  • private void button1_Click(object sender, System.EventArgs e)
  • {
  • string source = "Provider=Microsoft.Jet.OLEDB.4.0;" +
  • "Data Source = cheminde_la_base_de_donnees";
  • OleDbConnection conn = new OleDbConnection(source);
  • DataTable t = GetTables(conn);
  • tableCheckedListBox.DataSource = t;
  • tableCheckedListBox.DisplayMember = "TABLE_NAME";
  • listBox1.DataSource = t;
  • listBox1.DisplayMember = "TABLE_NAME";
  • }
using System.Data.OleDb;
using System.Data;              
using System.Collections;

                //
		//Methodes de récupéraion des noms de Tables
		//
		public DataTable GetTables(OleDbConnection conn)
		{
			conn.Open();
			DataTable schemaTable = conn.GetOleDbSchemaTable(OleDbSchemaGuid.Tables,
				new object[] {null, null, null, "TABLE"});
			conn.Close();
			return schemaTable;
		}

private void button1_Click(object sender, System.EventArgs e)
		{
			string source = "Provider=Microsoft.Jet.OLEDB.4.0;" + 
                        "Data Source = cheminde_la_base_de_donnees";
                        OleDbConnection conn = new OleDbConnection(source);
			DataTable t = GetTables(conn);
			tableCheckedListBox.DataSource = t;
			tableCheckedListBox.DisplayMember = "TABLE_NAME";
			listBox1.DataSource = t;
			listBox1.DisplayMember = "TABLE_NAME";
                }

Conclusion

voila! y'a plus qu'a appuyer sur le bouton et les tables de votre bases s'afficheront dans la ListBox
 

Commentaires et avis

signaler à un administrateur
Commentaire de ivanoff1 le 23/03/2005 21:28:36

salut !!

Si tu cherchais ausi sur www.vbfrance.com, tu verrais que j'ai fait exactement la même chose.

La différence pour ce point ci entre vb et c# n'est vraiment que peu de chose !!

a #

signaler à un administrateur
Commentaire de nuke_it le 25/03/2005 08:58:53

merci pur le tuyau j'irais y jeter un oeil de temps en temps même si j'y connais vraiement quedale en vb....
:p

Merci!

signaler à un administrateur
Commentaire de sprootch le 11/11/2005 12:34:34

Tres bien le code mais je n'arrive pas à recuperer les noms des tables sous forme de string. Il m'affiche bien le nom des tables dans la listbox mais lorsque je fais un listbox.selectedItem le string recuperé est: System.Data.DataRowView. Comment faire pour recuperer le nom de la table ? Merci

signaler à un administrateur
Commentaire de sprootch le 11/11/2005 14:00:25

ok g trouvé ;-)
for(int i=0;i<schema.Rows.Count;i++) this.listBox1.Items.Add(t.Rows[i]["TABLE_NAME"].ToString());

signaler à un administrateur
Commentaire de sprootch le 11/11/2005 14:02:29

petite erreur:
for(int i=0;i<t.Rows.Count;i++) this.listBox1.Items.Add(t.Rows[i]["TABLE_NAME"].ToString());

signaler à un administrateur
Commentaire de nissaf le 13/02/2006 13:32:07

je ne veux pas utiliser un listbox je veux tout simplement String comment faire ?

signaler à un administrateur
Commentaire de sprootch le 13/02/2006 13:54:53

Ben t.Rows[i]["TABLE_NAME"].ToString() c'est un string. Donc apres libre à toi d'en faire ce que tu veux.
Rappel: t est la Datatable remplie avec les infos de ta DataBase.

signaler à un administrateur
Commentaire de nissaf le 15/02/2006 13:41:48

non il n-affiche pas le contenu et j'ai trouvé le code et je l'envoyer plus tard

signaler à un administrateur
Commentaire de ihsane_casa le 31/05/2007 12:42:02

salut,
Merci pour votre code,mais est ce que vous pouvez m'expliquer cette ligne SVP :
DataTable schemaTable = conn.GetOleDbSchemaTable(OleDbSchemaGuid.Tables,new object[] {null, null, null, "TABLE"});

merci d'avance

signaler à un administrateur
Commentaire de nehla le 05/08/2008 13:09:49

Slt
j'ai utilisé cette methode "DataTable schemaTable = conn.GetOleDbSchemaTable(OleDbSchemaGuid.Tables,new object[] {null, null, null, "TABLE"});" et j'ai mis le resultat dans un  comboBox et lorsque je veux recuperer la valeur selectionnée du combobox j'ai ressu le résultat suivant System.Data.DataRowView.
je veux le nom de la table.
Merci d'avance pour l'aide

signaler à un administrateur
Commentaire de guakamole2 le 12/08/2008 09:10:33

Slt,

pour répondre à Nehla :

DataTable t = GetTables(oledbConn);
foreach (DataRow row in t.Rows){
   comboBox1.Items.Add(row["TABLE_NAME"].ToString());
}

Hope this help.

signaler à un administrateur
Commentaire de hitchou le 18/03/2009 20:16:25

Bonjour,
J'aimerai savoir s'il est possible d'effectuer cela en mode déconnecté, j'ai essayé mais je reçois un message m'indiquant que la méthode GetOleDbSchemaTable n'est accessible qu'en mode connecté :/
Merci

Ajouter un commentaire

Discussions en rapport avec ce code source dans le forum

Paths et WebServices [ par jdaviaud ] J'ai un phénomène que je n'arrive pas à comprendre.j'ai un WebService qui fait une requete SELECT dans une base Access et qui m'affiche le résultat da C#:connexion bd access et insertion ds un datagrid [ par poelvo ] Bonjour, je cherche le code source contenant une connexion à une bd access, la consultaion de celle-ci et l'affichage dans un datagrid. et le tout en Connection à une BDD MSDE/Access [ par eutexis ] Salut tout le monde, je suis nouveau ici. Je commence le C# avec les web forms, et j'ai un ENORME problème : la connection à une BDD MSDE/Sql Server o Cast Image Stocké BDD Access [ par kbumbazz ] Salut a vous ... alors bon week end ?bon voila une des 1ere requête de la semaine :)J'ai une image sotckée dans un BDD Access avec un champ de type Ob Probleme d'insert db access [ par space ] Je suis desole de poser des questions aussi stupides mais bon je vois pas je suis callé. J'aimerais realise un insert dans une bd access et pour cela Probleme d'acces à une base Access [ par ja001net ] Bonjour,Je fais un programme en C#.net utilisant une basse access, avec laquelle j'accède via un OleDbConnection un OleDbDataReader et un OleDbCommand aide pour access [ par snipeurs92 ] bonjour je vien de commencer la programation csharp avec le vs.net et je voudrais bien que l'on m'esplique clairement comment on peut enregistrer et l UPDATE avec Access [ par Tommy666 ] Salut,Je n'arrive pas à faire un UPDATE sur C#.Net !!! Si quelqu'un a une idée... elle est la bienvenue !Je fais dans ce style :sQuery = "UPDATE TblPe Accès aux métadonnées des bases Access [ par heriquet ] Quelqu'un pourrait-il m'indique les classes/procédures à suivre pour extraire les métadonnées d'une BD Access en C# ou autre ?Merci. Creation de base de données Access en c# [ par JulSoft ] Est-ce que quelqu'un sait comment Créer une bas de données Access(fichier *.mdb), ainsi que les tables qui en dépendent???Merci d'avance


Nos sponsors

Sondage...

CalendriCode

Juillet 2009
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
2728293031  

Consulter la suite du CalendriCode

Téléchargements

Logiciels à télécharger sur le même thème :

Comparez les prix Nouvelle version

Photothèque Nouveau !



Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), 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 : 8,065 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é.