`
yuanlanxiaup
  • 浏览: 859723 次
文章分类
社区版块
存档分类
最新评论

读取Access数据库、获取Access表信息——Visual C#读取Excel和Access数据库

 
阅读更多

Visual C#读取ExcelAccess数据库

三峡大学土木水电学院 肖泽云

Content

一、读取Excel表格... 1

二、保存Excel文件... 5

三、获取表的名称... 6

四、打开指定的Excel表格... 8

五、读取Access数据库... 10

六、获取Access表信息... 12

七、打开指定的Access... 13

五、读取Access数据库

读取Access数据库也可以通过Oledb的方式来实现,其方式和读取Excel文件类似,主要分为六步:1、建立连接;2、打开连接;3、建立SQL查询;4、输入查询语句;5、查询并显示数据;6、关闭连接。如果已知Access文件中的表名,则可以直接通过查询语句从该表中获取数据。如下代码:

private void 读入Access数据库_Click(object sender, EventArgs e)

{

OpenFileDialog openDG = new OpenFileDialog();

openDG.Title = "打开Access数据库";

openDG.Filter = "Access数据库(*.mdb)|*.mdb|所有文件(*.*)|*.*";

openDG.ShowDialog();

string filename;

filename = openDG.FileName;

DataTable table = new DataTable();

DataRow dr;

//1、建立连接

string strConn

= @"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + filename + ";";

OleDbConnection odcConnection = new OleDbConnection(strConn);

//2、打开连接

odcConnection.Open();

//3、建立SQL查询

OleDbCommand odCommand = odcConnection.CreateCommand();

//4、输入查询语句

odCommand.CommandText = @"SELECT * FROM sz_fcd";

OleDbDataReader odrReader = odCommand.ExecuteReader();

//5、查询并显示数据

int size = odrReader.FieldCount;

for (int i = 0; i < size; i++)

{

DataColumn dc;

dc = new DataColumn(odrReader.GetName(i));

table.Columns.Add(dc);

}

while (odrReader.Read())

{

dr = table.NewRow();

for (int i = 0; i < size; i++)

{

dr[odrReader.GetName(i)] = odrReader[odrReader.GetName(i)].ToString();

}

table.Rows.Add(dr);

}

//6、关闭连接

odrReader.Close();

odcConnection.Close();

dataGridView1.DataSource = table;

}

如果只需要获取表中的某个字段数据,则可以通过修改SQL查询语句来实现,如只需要获取GPSXGPSY这两个字段,则修改查询语句为:

odCommand.CommandText = @"SELECT GPSX,GPSY FROM sz_fcd";

如果要获取表中符合某个添加的数据,如字段GPSID值为163的所有数据,则修改查询语句为:

odCommand.CommandText = @"SELECT * FROM sz_fcd where GPSID=163";

如果要获取表中的数据并按某个添加排列,可以通过Order来指定,如指定数据按GPSID作为主排列,GPSYEARGPSMONTHGPSDAY为次排列,则修改查询语句为:

odCommand.CommandText = @"SELECT * FROM sz_fcd Order by GPSID,GPSYEAR,GPSMONTH,GPSDAY";

六、获取Access表信息

同样通过Oledb方式可以获取Access表信息,这些信息包括表名称、表类型等等。如下代码:

private void 获取Access表信息_Click(object sender, EventArgs e)

{

OpenFileDialog openDG = new OpenFileDialog();

openDG.Title = "打开Access数据库";

openDG.Filter = "Access数据库(*.mdb)|*.mdb|所有文件(*.*)|*.*";

openDG.ShowDialog();

string filename;

filename = openDG.FileName;

OleDbConnection oledbConnection;

string strConn

= @"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + filename + ";";

oledbConnection = new OleDbConnection(strConn);

oledbConnection.Open();

DataTable table = new DataTable();

table = oledbConnection.GetOleDbSchemaTable(OleDbSchemaGuid.Tables, new object[] { null, null, null, "TABLE" });

dataGridView1.DataSource = table;

}

其结果如下图所示:

图片

分享到:
评论

相关推荐

    C# 连接access数据库实例

    自己的简单连接本地的access数据库的小程序,通过datagridview控件显示数据,并实现翻页的功能,编译测试过

    access数据库操作案例c#源码

    c# access数据库操作 链接,读取,插入

    C#实现ACCESS与EXCEL互相导入导出

    C#实现ACCESS数据库数据在EXCEL之间互相导入导出,把Access数据导出到Excel表格中。以DB1.MDB中的表“报名表”数据为例。运行是请拷贝DB1.MDB数据库到Bin/debug目录中, Framework 4.0框架。 运行环境:Visual ...

    winform实现excel导入数据库

    winform实现Excel导入数据库,visual studio2005 + access数据库

    Visual C# .NET精彩编程实例集锦

    实例124 如何显示和修改数据库中的图像信息 实例125 如何使用水晶报表向导创建报表 第7章 网络应用 ---------------------------------- 实例126 如何下载网页 实例127 如何上下载文件 实例128 如何自制浏览器 实例...

    《Visual C# .NET精彩编程实例集锦》配套光盘文件【全】

    《Visual C# .NET精彩编程实例集锦》配套光盘文件【全】 目录回到顶部↑ 前言 第1章 控件操作 实例1 如何使用错误提醒控件 实例2 如何使用信息提示控件 实例3 如何使用菜单控件 实例4 如何使用工具栏控件 实例...

    Visual C#.NET 2008程序设计案例集锦 (源码)

    案例4.3 读取并浏览Access数据库中的数据 案例4.4 利用控件连接SQL Server数据库 案例4.5 利用ADO.NET访问SQL Server数据库 案例4.6 连接Excel电子表格 案例4.7 利用SQL语句向数据库表中插入数据 案例4.8 利用...

    轻松学C#(图解版)

    第三篇是应用技术篇,主要介绍的是异常处理、文件和流、委托、事件、Lambda表达式、命名空间、预处理器、程序集、运行时类型标识、反射、特性、泛型、LINQ和数据库开发等。 =======================================...

    C#编程经验技巧宝典

    103 &lt;br&gt;0168 使用Message.Show输出用户信息 104 &lt;br&gt;5.3 图片数据处理技巧 104 &lt;br&gt;0169 如何将图片存入数据库 104 &lt;br&gt;0170 如何将图片从数据库中读取出来 104 &lt;br&gt;0171 如何只允许输入...

    asp.net知识库

    C#中利用GetOleDbSchemaTable获取数据库内表信息[原创] 如何解决ACCESS中SELECT TOP语句竟然返回多条记录的问题? Asp.net 利用OleDb的GetOLEDBSchemaTable方法得到数据库架构信息 用于 Visual Studio .Net 的 IBM ...

    课程设计,实训-基于C#的摇号抽奖系统.zip

    1、开发环境为Visual Studio 2010,数据库为access,数据库文件在Debug文件夹中,使用.net 4.0开发。 2、默认保存抽奖号码的txt文件在Debug文件夹里面。 3、该源码功能比较简单,比较适合学习交流使用,感兴趣的...

    显示动画光标(C#源代码编写)显示动画光标,当运行程序时,光标将变成动画光标

    显示动画光标(C#源代码编写)显示动画光标,当运行程序时,光标将变成动画光标 VisualStudio2008创建[DllImport("user32")] private static extern IntPtr SetCursor(IntPtr hCursor); [DllImport("user32")] ...

    ASP升级.net资料大全(c#入门 语言规范 源码教程 学习笔记 技术资料 面试题 asp与.net代码生成器)

    得到当前数据库中所有用户表信息.txt 读取、设置系统时间日期.txt 读写注册表.txt 对过程进行加密.txt 二进制数据保存.txt 二进制数据字段的更新.txt 分页及动态创建列的控件 .txt 改变Windows服务的启动...

    C#微软培训资料

    1.1 Microsoft.NET——一场新的革命.4 1.2 .NET 与 C#.6 1.3 C#语言的特点.8 1.4 小 结 .11 第二章 运行环境 全面了解.NET.12 2.1 .NET 结构.12 2.2 公用语言运行时环境与公用语言规范.13 2.3 开 发 ...

    dotnetdbf:这是用C#编写的基本文件解析器,用于读取和写入xBase DBF文件,尤其是Clipper

    这是用C#编写的基本文件解析器,用于读取和写入xBase DBF文件。 纯.NET直接访问xBase DBF。 无需OBBC / JDBC即可读写xBase DBF。 Clipper和FoxPro使用xBase DBF文件。 可在Linux(Mono)上编译。 对于.net 4.0...

    c# 加密和解密相关代码

    解密后的信息和计算解密信息。 (3)程序主要代码如下: private void btn_Encrypt_Click(object sender, EventArgs e) { int P_int_Num, P_int_Key; //定义两个值类型变量 if (int.TryParse(txt_Num.Text, out P_...

Global site tag (gtag.js) - Google Analytics