您的位置: turnitin查重官网> 计算机 >> 计算机制造 >简论导出基于C#Excel数据导入导出SqlServer技术

简论导出基于C#Excel数据导入导出SqlServer技术

收藏本文 2024-03-20 点赞:5685 浏览:16423 作者:网友投稿原创标记本站原创

摘要:介绍vs2005环境下,利用C#完成Excel数据读取并导入sql server的思路和方法,同时还介绍了查询结果导出excel的思路和方法,并给出了主要程序的实现步骤和详细的程序代码。
关键词: c#;sql server;EXCEL数据

源于:论文格式模板www.udooo.com

;导入;导出
1009-3044(2012)26-6195-02
Research of the Technology about EXECL Data Import and Export SQL Server Based on C#
QIAO Zhi-
(School of Management, Shaanxi University of Technology,Hanzhong 723200,China)
Abstract:The ideas and methods of Reading Excel data and Import Sql Server with using the C# is studided by visual Stu? dio2005,but also the ideas of sing query results into Excel file is studided, and gives the main program implementation steps and detailed code.
Key words:C#; sql server;Excel data; import; export
在信息系统的的应用中,常常需要读取各种excel文件并处理后存入数据库中,此外大量的查询结果需要导出为excel文件。在一些文献中,介绍了将excel转化为xml文件再进行导入,还有的文献介绍用自动化的方法启动excel进程逐行读取,但此类方法操作复杂或者运行缓慢。此类方法在应用中效果不是很理想,此外还有一种方式是将excel当做数据库来读取,但常常遇到一些不规范的excel文件,下面详细讲述这一方法及应对不规范excel文件的方法。

1.1 Excel导入sql server

1.1实现方法

Excel文件可以认为是数据库,excel工作表名称加"$"可以看作是数据库中的表名,通过微软microsoft.jet.oledb连接excel数据库,通过sql语句读取数据。Excel的列可以看作是数据表的列,列名为”F”+序号+”$”,序号即列的顺序号(1…n)。对于合并的单元格,数据算作是被合并前的最左、最上侧的数据。
数据文件的读取
首先,生成数据库联接对象OleDbConnection,new OleDbConnection(@"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + excel文件名+ ";Extended Properties=’Excel 8.0;HDR=Yes;IMEX=1’");
注意:HDR=Yes表示电子表格第一行是标题,不当数据处理。若HDR=NO则表示第一行是数据。通常要求客户将第一行置为标题以方便程序处理。
其次,适用sql语言读取数据表,语句的形式通常为“select字段名1,字段名2,……,字段名n from“+excel工作表名+”$”。最后,连接sql server,并循环将数据插入sql server中。

1.2存在问题及解决方法

在实际应用中,客户提供的excel文件常是不规范的,包括列顺序不规范,列名称不规范。在实际应用中,常常出现多行表头,用户在表头中存放标题等信息。如果忽视这些问题,在数据读取过程中可能引发错误造成程序死机,造成软件容错性能差。此外,对于不规范的数字输入应采取转换(比如全角数字)和提示。
对于列标题的读取,分两种情况:单表头,即第一行是列2标题,第二行及以下都是数据;多表头,客户往往喜欢在excel表前面
Excel数据导入sql server数据库及查询结果导出excel文件是管理信息系统常用的功能。本文基于c# .NET,实现了sql server与Excel表格的数据批量导入导出,该方法在一些管理系统中得到了应用,实践证明该方法切实可行。
李志云. C#对SQL Server中的数据导入导出[J].电脑编程技巧与维护,2009(17):43-46.
陈瑾.在C#中实现SQL server和Excel之间的数据传输[J].苏州市职业大学学报,2010,21(2):41-45.
[3]陈瑾.在C#中实现SQL server和Excel之间的数据传输[J].苏州市职业大学学报,2010,21(2):41-45.
[4]余秋明.基于C#实现SQL Server和Oracle数据库间数据迁移[J].电脑知识与技术,2009,5(2):7842-7844.
[5]华国栋.基于ADO.NET的数据库访问及其性能优化[J].电脑知识与技术,2004(6):215-218.

copyright 2003-2024 Copyright©2020 Powered by 网络信息技术有限公司 备案号: 粤2017400971号