![](/img/trans.png)
[英]how do I insert into a textBox a value from MS-Access in visual studio c# using OleDb?
[英]How do I list all the queries in a MS Access file using OleDB in C#?
我有一個包含200個查詢的Access 2003文件,我想在SQL中打印出它們的表示形式。 我可以使用Design View查看每個查詢並將其剪切並粘貼到文件中,但這很繁瑣。 另外,我可能必須在其他Access文件上再次執行此操作,因此,我絕對想編寫一個程序來執行此操作。
查詢在哪里存儲Access數據庫? 我找不到任何關於如何達到目標的信息。 我不熟悉Access,因此不勝感激。 謝謝!
您正在尋找以下程序:
OleDbConnection conn = new OleDbConnection(connectionString);
conn.Open();
DataTable queries = conn.GetOleDbSchemaTable(OleDbSchemaGuid.Procedures, null);
conn.Close();
這將為您提供一個包含以下各列的DataTable(以及其他):
PROCEDURE_NAME:查詢名稱
PROCEDURE_DEFINITION:SQL定義
因此,您可以像這樣遍歷表:
foreach(DataRow row in queries.Rows)
{
// Do what you want with the values here
queryName = row["PROCEDURE_NAME"].ToString();
sql = row["PROCEDURE_DEFINITION"].ToString();
}
您可以使用OleDbConnection的GetSchema方法以及Remou發布的有關ADO Schema的方法將它們放在一起
糟糕,忘記了鏈接: MSDN
如果您想手動進行快速查詢。
SELECT MSysObjects.Name
FROM MSysObjects
WHERE type = 5
不在C#中,但可能是一個不錯的起點:
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.