惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

Y
Y Combinator Blog
Google DeepMind News
Google DeepMind News
腾讯CDC
V
Visual Studio Blog
Engineering at Meta
Engineering at Meta
博客园 - 司徒正美
小众软件
小众软件
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
T
Tailwind CSS Blog
Vercel News
Vercel News
爱范儿
爱范儿
Last Week in AI
Last Week in AI
G
Google Developers Blog
阮一峰的网络日志
阮一峰的网络日志
P
Proofpoint News Feed
有赞技术团队
有赞技术团队
D
DataBreaches.Net
博客园_首页
J
Java Code Geeks
云风的 BLOG
云风的 BLOG
V
V2EX
A
About on SuperTechFans
H
Hackread – Cybersecurity News, Data Breaches, AI and More
人人都是产品经理
人人都是产品经理

博客园 - 刘杨兵

调用windows api(C#) Excel编程[C#] 动态创建Access数据库文件(C#) NET Remoting简单介绍 程序集与COM组件 VS.NET新建项目失败(附解决方案) - 刘杨兵 - 博客园 XSLT C# DES加减密 下拉菜单 - 刘杨兵 - 博客园 类似软件风格的网页下拉菜单 datalist DOM 精简知识教程 DOM对象笔记(js) 自定义对话框 js位置 js中的位置[一] ASP.NET的缓存技术 httpModule[2] httpModule
获得数据库中的所有表名和列名(C#)
刘杨兵 · 2006-12-21 · via 博客园 - 刘杨兵

 获得数据库中包括的所有数据表以及列信息(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