APP下载

VC6使用ODBC API操作Excel表的具体步骤

2014-07-13申屹

电脑知识与技术 2014年5期
关键词:句柄数据源飞翔

摘要:Excel作为普及率最高的办公软件,受到广泛好评,同时Excel具有记录、统计数据的类似数据库的功能,被广泛用于日常的小规模的数据记录和管理。为了增加对Excel的自动化管理,可以使用c++等语言实现对Excel表的程序访问,提高工作效率。目前,网络共享资源中,对于ODBC API访问Excel表的介绍非常稀少,也不系统。该文希望能对这一领域进行补充和整理。

关键词:ODBC API;VC++6;连接数据库;释放资源

中图分类号:TP311 文献标识码:A 文章编号:1009-3044(2014)05-0949-03

Abstract:Excel as the most popular office software, was widely praised,then similar database with records, statistical data functions,Widely used for data recording and management of small scale daily. In order to increase the automation management for Excel,you can use the C++ language to achieve the Excel from program access,improve work efficiency. At present, in the network shared resource,accessing the Excel database by ODBC API is very rare,and not a system. I hope this paper can supplement and finishing in this field.

Key words:ODBC API;VC++6;Connect to the database;release resources

將具体的介绍Vc6环境下,使用ODBC API完成对Excel表,执行建表、添加、删除、追加的操作完整的过程。文章每一个部分,都包括两个部分,第一部分是文字描述,后一个部分是具体步骤和代码。

1 ODBC API操作Excel的概述

1.1 动态的设置ODBC数据源

动态设置数据源,大大提高了程序的自动化程度和实用性,更人性话的完成用户操作Excel表的工作,因此,这也是很重要的一个部分。动态设置数据源,本质的操作就是:将信息写入到注册表中。下面就是操作的源代码,具体步骤在代码注释中。

当然在完成上述步骤之后,还需要一些善后工作,比如释放申请的动态内存等,防止内存泄漏。这些是程序员基本的素质,这里简单的提一下,之后将省略,只介绍关键的步骤和代码。

1.2 ODBC API操作数据库的步骤

完成了数据源的注册以后,接下来的工作就是连接数据库。当然Excel并不算数据库,但是,因为它在办公中的使用频率很高,使用人群很大,比起mdb和sql以及显得落后的dbf这些数据库来说,更具有实用性。而且对于普通的公司信息来说,Excel表的存储能力和实用性还是非常合适的。这也是我写这篇文章的意义所在。这里,我是根据我所做的一个程序来写的,所以,Excel表的名称就是我自定义的:c:\\guozichu\\yihaopin.xls(翻译过来就是”国资处的易耗品表”)。

ODBC API连接数据库,有固定的步骤,相对微软的DAO和ADO来说代码量大了很多。连接需要七个大的步骤,我还将这的七步,分为三个部分,分别介绍如下:

下面,就分别介绍这三个部分。

2 ODBC API操作Excel的具体步骤

2.1 第一部分 连接数据库

1) 申请变量

2) 创建环境句柄

3) 设置环境句柄

4) 申请连接句柄

5) 设置连接属性

6) 连接数据源

为了便于理解,下面给出SQLConnect函数的原型和参数说明:

连接数据源的源代码

2.2 第二部分 操作部分

完成了连接工作,之后就是生成按照用户访问数据表的要求,生成SQL语句,然后操作数据表,获得返回集。

1) 申请表句柄

2) 生成SQL语句

3) 执行SQL语句

至此,完成了对Excel表的连接和操作,以后就是对SQL执行的结果集进行处理,比如用while循环和SQLFetch(hstmt)函数,对结果集hstmt进行处理。

2.3 第三部分 结束的工作

所以要有结束部分,因为打开的数据库,需要关闭和断开连接,否则下一次的连接申请将不能进行。而且连接数据表和操作的时候,申请了很多系统资源,都需要在这一步进行释放。这才是一个完整的ODBC API访问数据库的过程。

需要特别注意的是顺序,释放资源必须按下列循序释放:

参考文献:

[1] Silberschatz.数据库系统概论[M].杨冬青,唐世渭,译.北京:机械工业出版社,2000.

[2] 韦朴,陈泰生.Visual C++通用范例开发金典[M].北京:电子工业出版社,2008.

[3] 徐兆元.C++从入门到精通[M].北京:化学工业出版社,2009.

[4] 王晟.Visual Basic数据库开发经典案例解析[M].北京:清华大学出版社,2006.

猜你喜欢

句柄数据源飞翔
飞翔吧,少年!
飞翔(上)
Web 大数据系统数据源选择*
高校图书馆持久标识符应用研究
基于不同网络数据源的期刊评价研究
编译程序语法分析句柄问题分析与探讨
独自前行 迎风飞翔
基于真值发现的冲突数据源质量评价算法
好梦飞翔
分布式异构数据源标准化查询设计与实现