için Çayı'ndan AccessFile okumak için, düzenli uygulamasıdır:Kullanım OLEDB I (.accdb) DataSet, ben tablo isimleri veya sütunları bilmem bir AccessFile okumak için OleDB kullanın DataSet
public void GetAccessDB(string filepath){
this.ConnectionString = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source = " + filepath;
// get Table Names
this.TableNames = new List<string>();
using (System.Data.OleDb.OleDbConnection oledbConnection = new System.Data.OleDb.OleDbConnection(this.ConnectionString))
{
oledbConnection.Open();
System.Data.DataTable dt = null;
dt = oledbConnection.GetOleDbSchemaTable(System.Data.OleDb.OleDbSchemaGuid.Tables, null);
foreach (System.Data.DataRow row in dt.Rows)
{
string strSheetTableName = row["TABLE_NAME"].ToString();
if (row["TABLE_TYPE"].ToString() == "TABLE")
this.TableNames.Add(strSheetTableName);
}
oledbConnection.Close();
}
this.Dataset = new System.Data.DataSet();
using (System.Data.OleDb.OleDbConnection oledbConnection = new System.Data.OleDb.OleDbConnection(this.ConnectionString))
{
foreach (string table in this.TableNames)
{
string command = string.Format("SELECT * FROM {0};", table);
using (System.Data.OleDb.OleDbCommand cmd = new System.Data.OleDb.OleDbCommand(command, oledbConnection))
{
cmd.CommandType = System.Data.CommandType.Text;
oledbConnection.Open();
System.Data.OleDb.OleDbDataReader dr = cmd.ExecuteReader();
this.Dataset.Load(dr, System.Data.LoadOption.OverwriteChanges, table);
oledbConnection.Close();
}
}
}
}
Ama Access Dosyasını Stream'den almalıyım ve bunu Diske geçici olarak yazamam, yani öneriniz nedir?
İhtiyacım olan bu GetAccessDB(Stream AccessFile)
mu? This'u bulup buluyorum, ancak bu benim için net değil, Access File'deki tüm Tablolar tarafından nihayet DataSet'e ihtiyacım var.
Bunu bilen var mı?
Niçin akış olarak açılan bir 'Erişim 'dosyasında veri işlemlerini yapmak istersiniz? Sadece merak. –
@AlexFilipovici İstemciler Yükleme Dosyasını Yüklüyor Ve Bunları Okumalı ve Hedef Veri Bulmalı ve SQL'de saklanmalı ve İstemciye Bir Hedef Veri Tablosu Göstereyim, fakat (bazı sınırlamalar) Dosyaları Diske Yazamıyorum! – Saeid
nasıl oluyor da yerel disk üzerinde çalışma yapamazsınız ..? lütfen aklınızı daha iyi açıklayın, böylece başkalarının anlayabildiği ve sizi altın yoldan aşağı götürmediği için – MethodMan