Csharp/C#教程:如何获取Access(Jet)数据库中的表列表?分享


如何获取Access(Jet)数据库中的表列表?

我需要查看我的c#程序使用的Access数据库中是否存在表。 知道有其他数据库的SQL命令将返回表列表。 Access / Jet数据库是否有这样的命令?

试试GetSchema()

connection.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=c:\access.mdb"; connection.Open(); DataTable userTables = connection.GetSchema("Tables"); 

完整代码: 获取Access数据库中的表列表 – ADO.NET教程

 // Microsoft Access provider factory DbProviderFactory factory = DbProviderFactories.GetFactory("System.Data.OleDb"); DataTable userTables = null; using (DbConnection connection = factory.CreateConnection()) { // c:testtest.mdb connection.ConnectionString = "Provider=Microsoft .Jet.OLEDB.4.0;Data Source=c:\test\test.mdb"; // We only want user tables, not system tables string[] restrictions = new string[4]; restrictions[3] = "Table"; connection.Open(); // Get list of user tables userTables = connection.GetSchema("Tables", restrictions); } // Add list of table names to listBox for (int i=0; i < userTables.Rows.Count; i++) listBox1.Items.Add(userTables.Rows[i][2].ToString()) 

这里是你的答案: http : //social.msdn.microsoft.com/Forums/en/adodotnetdataproviders/thread/d2eaf851-fc06-49a1-b7bd-bca76669783e

这样的事情应该可以解决问题。 子句Type = 1指定表。 请注意,这还将包括结果集中的系统表(它们以前缀“MSys”开头)。

上述就是C#学习教程:如何获取Access(Jet)数据库中的表列表?分享的全部内容,如果对大家有所用处且需要了解更多关于C#学习教程,希望大家多多关注---计算机技术网(www.ctvol.com)!

 SELECT Name FROM MSysObjects WHERE Type = 1 

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

ctvol管理联系方式QQ:251552304

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

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

精彩推荐