Csharp/C#教程:如何在C#中使用OleDB列出MS Access文件中的所有查询?分享


如何在C#中使用OleDB列出MS Access文件中的所有查询?

我有一个包含200个查询的Access 2003文件,我想在SQL中打印出它们的表示forms。 我可以使用设计视图来查看每个查询并将其剪切并粘贴到文件中,但这很乏味。 另外,我可能不得不在其他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架构发布的内容将它们放在一起

哎呀忘了链接: MSDN

如果您想手动快速查询。

 SELECT MSysObjects.Name FROM MSysObjects WHERE type = 5 

不是在C#中,但可能是一个好的开始:

https://www.datastrat.com/Code/DocDatabase.txt

上述就是C#学习教程:如何在C#中使用OleDB列出MS Access文件中的所有查询?分享的全部内容,如果对大家有所用处且需要了解更多关于C#学习教程,希望大家多多关注—计算机技术网(www.ctvol.com)!

本文来自网络收集,不代表计算机技术网立场,如涉及侵权请联系管理员删除。

ctvol管理联系方式QQ:251552304

本文章地址:https://www.ctvol.com/cdevelopment/1023525.html

(0)
上一篇 2022年1月7日
下一篇 2022年1月7日

精彩推荐