ASP实现Excel工作表和数据库的导入导出

2015-05-30 12:11钟贞魁
关键词:数据库

摘要:本文论述了利用ASP技术将Excel工作表导入到数据库,将数据库查询出来的数据导出到Excel工作表的实现方法,并给出了程序实例。

关键词:ASP  Excel  数据库

0 引言

在互联网高速发展的今天,很多企事业单位建立了自己的网站,网站信息管理员平时把数据输入到网站的数据库,网站程序会自动计算、统计、分析数据,并产生用户所需的报表,但目前很多B/S结构的信息管理系统,数据的输入还是只能一条一条记录地输入,输出的报表格式固定不能满足用户的需求。对于信息管理员来说,很多的数据还是存储在Excel工作簿中,比如:某手机经营店上了一套进销存管理系统,店里每次进货都是几百上千地进,供货商会给出Excel格式的进货单,存储的信息是手机串号、机型、品牌、进价等信息,对于手机经营店来说,希望能够直接把供货商给的Excel工作表数据导入系统,如果自己输入,工作量很大。企业应用软件最后输出结果都是报表的形式,他们希望输出的报表能够进行二次分析利用。对于开发信息管理系统的程序员来说,报表的显示和打印是整个开发过程中最麻烦但又必须做的事情,如果我们能把报表输出结果转化到Excel文件中,提供给用户进行二次加工处理,这样就提高了程序的通用性。本文介绍了ASP技术实现网站数据库和Excel交互的方式,给出了程序实例。

1 相关技术简介

①Excel电子表格。Excel是微软办公套装软件的一个重要的组成部分,它可以进行各种数据的处理、统计分析和辅助决策操作,广泛地应用于管理、统计财经、金融等众多领域。大部分人都是用它来进行数据处理,制作电子表格。②ASP和SQL Server数据库。ASP是一种服务器端脚本编写环境,可以用来创建和运行动态网页或Web应用程序。ASP網页可以包含HTML标记、普通文本、脚本命令以及COM组件等。它可以与数据库和其它程序进行交互,是一种简单、方便的编程工具。SQL Server是目前比较流行的关系数据库管理系统,广泛应用于网站的后台数据库。ASP与SQL Server数据库的组合是构建商务网站的一种解决方案。

2 ASP实现批量导入Excel工作表

下面以笔者开发的一套手机管理系统为例,介绍如何将Excel文件中保存的手机入库信息导入到网站后台数据库的实现过程。这里以SQL Server作为网站的后台数据库。

2.1 将需要导入的Excel文件上传到网站目录。上传的目的主要是为了更方便地读取Excel文件的内容。笔者开发的思路是使用ASP连接Excel文档,打开指定的工作表,读取Excel工作表中的记录,再写入到SQL Server数据库中。上传文件的实现,这里就不详细介绍,可以使用组件。假设上传到网站根目录的excel_up文件夹。

上传入库信息的网页“pl_phone_lr.asp”的界面如下图1所示。

在开发的时候,我们先向客户要了一个手机入库信息电子表格,和客户一起商量了需要导入的数据的格式,有哪些字段,字段的数据类型,字段大小等。具体格式要求如下图2所示。

其中手机串号为15位数字字符,工作簿文件的命名没有要求,表的名为固定为“入库细表”,这个很重要,不能改变,不然后面的程序找不到要读取的表名。

2.2 设计Excel文档导入到SQL Server数据库的程序。

①图1的界面,浏览找到需要上传的文件后,按下“开始上传”按钮提交表单,网页跳转到如下图3所示的网页(upload.asp)。

此网页文本框中保存了上传后工作簿的文件名,按下“转换到数据库”按钮,将提交到exceltosql.asp页面处理。

②exceltosql.asp页面负责读取Excel工作表的内容,并写入SQL Server数据库。实现过程并不复杂,关键是使用ASP连接上Excel工作簿,把工作簿文档也当做数据库来访问,只是连接的代码不同而已。连接Excel工作簿代码如下:

<%

source1=server.MapPath("excel_up")&"/"&request("filename") '获取上传文件的路径信息

myConn_Xsl="Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" &source1& ";Extended Properties=Excel 8.0" '连接Excel工作簿的字符串

xlsconn.open myConn_Xsl  '打开Excel工作簿连接

sql="select * from [入库细表$] where 串号<>'' "  '定义读取入库细表的sql语句

3 ASP实现导出查询数据到Excel工作表

对于一个信息管理系统来说,数据导入之后,我们需要查询各种信息,并且生成报表打印输出。例如手机管理系统中,手机统计表的格式如图4所示。

ASP的页面中,查询出来的数据用表格的形式进行布局,我们可以选定内容复制到Excel表中,这样比较麻烦。其实,我们在ASP的查询页面中,只要加“<%response.ContentType = "application/vnd.ms-excel"%>”这样一行代码,就可以把查询的内容输出到Excel表中。

4 结语

本文介绍的ASP技术实现Excel数据导入导出数据库的方法,实现原始数据到网站数据库的自动导入,避免了大量数据重新输入的问题,提高了管理人员的工作效率,查询出来的数据导出到Excel工作表中,用户可以自己修改报表格式进行输出打印。

参考文献:

[1]徐辉.电子商务网站导入Excel数据的设计与实现[J].商场现代化,2008.10.

[2]郭永亮,邓强.在JSP中实现查询并导入Excel的通用程序[J].甘肃冶金,2006.3.

[3]李玉梅.动态WEB数据库应用研究[D].昆明理工大学,2001.

作者简介:钟贞魁(1981-),男,江西兴国人,江西环境工程职业学院,副教授,研究方向:软件工程,网站设计。

猜你喜欢
数据库
数据库
数据库
数据库
数据库