Excel到数据库的导入三部曲

来源:未知 责任编辑:责任编辑 发表时间:2015-10-08 14:16 点击:

前段时间考试系统要新添加一个功能,要把学生表的信息批量导入,也就是需要从excel中导入到数据库表,小女子不才,找了好长时间才解决。
一、如果表是没有建立的,我们需要在数据库表中重新建立一个表盛放excel数据的时候:
 
在sql server中的导入语句:
SELECT * intocity2 FROM OpenDataSource( 'Microsoft.Jet.OLEDB.4.0', 'DataSource="f:\test.xls";User ID=Admin;Password=;Extendedproperties=Excel 5.0')...[Sheet1$] 
 
这里需要注意的是,如果直接写这个语句,会出现这样的错误:
SQL Server 阻止了对组件'Ad HocDistributed Queries' 的STATEMENT'OpenRowset/OpenDatasource' 的访问,因为此组件已作为此服务器安全配置的一部分而被关闭。系统管理员可以通过使用sp_configure 启用'Ad Hoc Distributed Queries'。有关启用'Ad HocDistributed Queries' 的详细信息,请参阅SQL Server 联机丛书中的"外围应用配置器"。
 
所以,我们这里需要启动服务:
启动语句为:
[html]  
execsp_configure 'show advanced options',1  
reconfigure    www.2cto.com  
execsp_configure 'Ad Hoc Distributed Queries',1  
reconfigure  
 
当然,用完之后要记得关闭:
关闭语句为:
[html]  
execsp_configure 'Ad Hoc Distributed Queries',0  
reconfigure  
execsp_configure 'show advanced options',0  
reconfigure  
 
因为考试系统是基于asp.net实现的,所以,一下是asp.net的实现代码,需要注意的是,因为语句中存在”,\等特殊符号,所以,我们需要使用转义字符来使这些特殊符号成为字符串类型,这里是一些常用的转义字符符号:http://baike.baidu.com/view/73.htm
 
[html]  
   protectedvoid btntoLaad_Click(object sender, EventArgs e)  
{  
   
SqlConnectionmycon = new SqlConnection("server=.;database=qingniao;uid=sa;pwd=123");  
string sqlstr = "SELECT * into cityFROM OpenDataSource( 'Microsoft.Jet.OLEDB.4.0', 'Data Source=\"f:\\test.xls\";User ID=Admin;Password=;Extended properties=Excel5.0')...[Sheet1$]";  
   
   
       SqlCommand cmd = new SqlCommand(sqlstr, mycon);  
   
       mycon.Open();  
   
       cmd.ExecuteNonQuery();  
     www.2cto.com  
       mycon.Close();  
}  
 
这样,数据库中会建立一个city表,来存储excel中的数据。
 
二、将excel表导入到已经存在的数据库表
这里需要注意的是,excel表中的数据必须要和数据库表中的数据一致
比如,如果数据库表的字段为
发表评论
请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。
用户名: 验证码:点击我更换图片
最新评论 更多>>

推荐热点

  • sql常见面试题
  • SQL SERVER 2005性能之跟踪
  • LINUX上RMAN自动备份脚本
  • sql server 列转行
  • SQL SERVER2008日常自动化备份
  • SQL Server 2005 镜像构建手册
  • SQL编程(一)
  • 如何将多个SQL查询统计结果一次显示出来
  • 浅谈SQL Server中的事务日志(三)----在简单恢复模式下日志的角色
网站首页 - 友情链接 - 网站地图 - TAG标签 - RSS订阅 - 内容搜索
Copyright © 2008-2015 计算机技术学习交流网. 版权所有

豫ICP备11007008号-1