在C#中获取Access数据库中的所有表名和列名

简介:

我们经常想获取一个数据库中的所有表名和列名,在MS SQL中,比较方便,直接查询sysobjects表即可获取。但是在Access中,如何获取呢?昨天正好有个程序要用到Access中的表,来判断是否存在,如果不存在,则创建。<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" />

 

其实很简单,我们利用.Net内置的方法即可获取。

访问ACCESS数据库我使用的是Oledb方式来访问的。代码如下:

 

sqlConn.GetOleDbSchemaTable(OleDbSchemaGuid.Tables,new Object[]{null,null,null,"Table"});

 

此代码返回的即是该数据库中所有的数据表清单,返回值为DataTable,你可以以此为数据源绑定到DataGrid中,来查看其内部数据结构。来具体获取自己所需要内容。

其中sqlConn是一个已经打开的OleDB数据连接的实例。

 

sqlConn.GetOleDbSchemaTable(OleDbSchemaGuid.Columns,new Object[]{null,null,strTableName,null});

 

此代码返回的是指定数据表中的数据列的清单,返回值为DataTable,你可以将此绑定到DataGrid中,来查看其内部数据结构,来获取自己所需的具体内容。

其中sqlConn是一个已经打开的OleDB数据连接的实例。参数strTableName是指定的数据表名称。

 

好了,赶快试一下吧。具体的使用方法也可以查看一下MSDN,因为这些东西,我是从MSDN上获取的。

目录
相关文章
|
6月前
|
SQL 数据库 C#
C# .NET面试系列十一:数据库SQL查询(附建表语句)
#### 第1题 用一条 SQL 语句 查询出每门课都大于80 分的学生姓名 建表语句: ```sql create table tableA ( name varchar(10), kecheng varchar(10), fenshu int(11) ) DEFAULT CHARSET = 'utf8'; ``` 插入数据 ```sql insert into tableA values ('张三', '语文', 81); insert into tableA values ('张三', '数学', 75); insert into tableA values ('李四',
158 2
C# .NET面试系列十一:数据库SQL查询(附建表语句)
|
1月前
|
关系型数据库 MySQL 数据库
使用Docker部署的MySQL数据库如何设置忽略表名大小写?
【10月更文挑战第1天】使用Docker部署的MySQL数据库如何设置忽略表名大小写?
98 1
|
1月前
|
SQL 缓存 大数据
C#高效处理大数据的批次处理,以及最好的数据库设计
C#高效处理大数据的批次处理,以及最好的数据库设计
56 0
|
2月前
|
SQL 存储 关系型数据库
C#一分钟浅谈:使用 ADO.NET 进行数据库访问
【9月更文挑战第3天】在.NET开发中,与数据库交互至关重要。ADO.NET是Microsoft提供的用于访问关系型数据库的类库,包含连接数据库、执行SQL命令等功能。本文从基础入手,介绍如何使用ADO.NET进行数据库访问,并提供示例代码,同时讨论常见问题及其解决方案,如连接字符串错误、SQL注入风险和资源泄露等,帮助开发者更好地利用ADO.NET提升应用的安全性和稳定性。
218 6
|
3月前
|
关系型数据库 Java MySQL
C#winform中使用SQLite数据库
C#winform中使用SQLite数据库
184 3
C#winform中使用SQLite数据库
|
3月前
|
存储 关系型数据库 MySQL
"Linux环境下MySQL数据库名及表名大小写敏感性设置详解:从配置到影响,确保数据库操作的准确与高效"
【8月更文挑战第9天】在Linux环境中,MySQL数据库名及表名的大小写敏感性是一项重要配置。默认情况下,MySQL在Linux上区分大小写,但这可通过配置文件 `/etc/my.cnf` 中的 `lower_case_table_names` 参数调整。该参数设为0时,名称存储时保持原样,查询时不区分大小写;设为1则全部转换为小写。通过编辑配置文件并重启MySQL服务,可根据需求灵活控制名称的大小写敏感性,确保数据一致性和应用兼容性。
201 3
|
3月前
|
关系型数据库 MySQL 大数据
C#使用SqlSugar操作MySQL数据库实现简单的增删改查
C#使用SqlSugar操作MySQL数据库实现简单的增删改查
254 2
|
4月前
|
SQL 关系型数据库 MySQL
云服务器 ECS产品使用问题之出现“1044 - Access denied for user ‘root‘@‘%‘ to database ‘数据库名称‘”这样的错误,该怎么办
云服务器ECS(Elastic Compute Service)是各大云服务商阿里云提供的一种基础云计算服务,它允许用户租用云端计算资源来部署和运行各种应用程序。以下是一个关于如何使用ECS产品的综合指南。
|
6月前
|
SQL XML 存储
Microsoft Access 是微软公司开发的关系型数据库管理系统(
【5月更文挑战第14天】Microsoft Access 是微软公司开发的关系型数据库管理系统(
78 1
|
6月前
|
SQL 存储 Oracle
C#利用IDbCommand实现通用数据库脚本执行程序
C#利用IDbCommand实现通用数据库脚本执行程序
下一篇
无影云桌面