获得数据库中的所有表名和列名(C#)

 获得数据库中包括的所有数据表以及列信息(C#)

    背景:
    在日常程序设计与开发过程中,我们经常需要检测某数据库中是否存在指定名称的数据表或某个数据表中是否存在指定名称的数据列.在这个情况下,就不可避免地需要获得数据库中的所有表名和列名.
 
   解决办法:
   一.对于MS SQL Server数据库
     在MS SQL中,比较方便,直接查询sysobjects
表即可获取。
 
  二.对于MS Access数据文件
    对于Access数据文件,我们可以通过Net Framework自带的OleDb Data Provider实现.
   示例代码如下:
   1.获得所有自定义数据表  
   其中dtSchema为一DataTable类型变量,myConn为一到指定Access数据文件的Ole连接对象
    dtSchema = myConn.GetOleDbSchemaTable(OleDbSchemaGuid.Tables,new object[]{null,null,null,"Table"});  ///关键代码

    2.获得指定数据表中所有字段相关信息
   其中tblName为待获得字段信息的数据表名
     DataTable dtFieldInfo = myConn.GetOleDbSchemaTable(OleDbSchemaGuid.Columns, new object[]{null,null,tblName,null});

  示意图如下图1,2所示:
 图1 :

图2:

源代码下载地址:
/Files/prince1985s/GetSchemaInfo.zip

 

转载于:https://www.cnblogs.com/prince1985s/archive/2006/12/21/599027.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值