2009-08-07 8 views
0

besoin de créer un formulaire dans lequel je dois parcourir et ouvrir les fichiers mdb ---> j'ai fait cette partie usin dialogue oprnfile!comment obtenir des tables de champs d'un accès db dans une zone de liste? `

private void (object sender, EventArgs e) {button1_Click

OpenFileDialog oDlg = new OpenFileDialog(); oDlg.Title =

"Sélectionner MDB"; oDlg.Filter =

"MDB (.Mdb) | .mdb"; oDlg.RestoreDirectory =

true;

chaîne dir = Environnement.GetFolderPath (Environment.SpecialFolder.Desktop); oDlg.InitialDirectory = dir;

Résultat de DialogResult = oDlg.ShowDialog();

if (résultat == DialogResult.OK) {

textBox1.Text = oDlg.FileName.ToString();

}

chaîne

strFileName = oDlg.FileName.ToString();

OleDbConnection cn = nouveau OleDbConnection();

DataTable schemaTable; cn.ConnectionString =

"Provider = Microsoft.Jet.OLEDB.4.0; Mode = Partage refusé Aucune; Source de données =" + nomFichier; cn.Open();

schemaTable = cn.GetOleDbSchemaTable (

OleDbSchemaGuid.Tables,

new Object [] {null, null, null, "TABLE"});

// Liste le nom de la table de chaque ligne de la table de schéma.

for (int i = 0; i < schemaTable.Rows.Count; i ++) {

strTableName = schemaTable.Rows [i] .ItemArray [2] .ToString();

listBox1.Items.Add (strTableName);

}

// Explicitement close - ne pas attendre sur la collecte des ordures.

cn.Fermer();

}

c'est mon code jusqu'à présent !!!

maintenant je dois faire 3 boîtes de liste !!

1er à afficher les noms de table de la db < ----- fait jusqu'à ici !!!!

2e à afficher les noms de champs lorsque vous cliquez sur le nom de la table !!! ---> à b fait! 3ème pour afficher les attributs sur les bandes sur clickin dessus !!! ---> to b done!

v pouvez modifier les valeurs d'attribut et sur clickin du bouton de sauvegarde, il devrait mettre à jour la base de données !!!

+0

S'il vous plaît ne pas poster la même question deux fois. Merci. –

Répondre

0

Vérifiez le tableau de colonnes de votre objet schemaTable:

for(int i=0;i<schemaTable.Columns.Length;i++) 
    listBox2.Items.Add(schemaTable.Columns[i].ToString()); 
Questions connexes