को स्ट्रीम से AccessFile पढ़ने के लिए मैं OLEDB का प्रयोग करें एक AccessFile पढ़ने के लिए (.accdb) डेटासेट के लिए, मैं मेज के नाम या स्तंभों के बारे में पता नहीं है, नियमित रूप से दिया गया है:उपयोग OLEDB डेटासेट
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();
}
}
}
}
लेकिन मुझे स्ट्रीम से एक्सेस फ़ाइल प्राप्त करने की आवश्यकता है, और मैं इसे डिस्क अस्थायी पर नहीं लिख सकता, तो आपका सुझाव क्या है?
मुझे GetAccessDB(Stream AccessFile)
का यह अधिभार चाहिए? मैं खोज और This ढूंढता हूं, लेकिन यह मेरे लिए स्पष्ट नहीं है, मुझे अंत में एक्सेस फ़ाइल में सभी टेबल्स द्वारा डेटासेट प्राप्त करने की आवश्यकता है।
क्या कोई इस बारे में जानता है?
स्ट्रीम के रूप में खोले गए 'एक्सेस' फ़ाइल में आप डेटा ऑपरेशंस क्यों करना चाहते हैं? बस उत्सुक। –
@AlexFilipovici ग्राहक अपलोड फ़ाइल अपलोड करें और मुझे उन्हें पढ़ने और लक्ष्य डेटा ढूंढने और SQL पर संग्रहीत करने और क्लाइंट को लक्ष्य डेटा की एक तालिका दिखाएं, लेकिन मैं (कुछ सीमा) डिस्क पर फ़ाइलों को लिख नहीं सकता! – Saeid
आप स्थानीय डिस्क पर काम कैसे नहीं कर सकते .. ..? कृपया अपने तर्क को बेहतर तरीके से समझाएं ताकि अन्य लोग सुन सकें और आपको सुनहरा पथ नहीं ले जा सकें क्योंकि वे कहते हैं कि – MethodMan