设为首页 收藏本站
查看: 679|回复: 0

[经验分享] 向sqlserver 2008导入access、excel数据

[复制链接]

尚未签到

发表于 2016-5-22 10:26:30 | 显示全部楼层 |阅读模式
一:导入Access数据
1、在sql2008查询分析 器中输入如下查询语句能查出access中的数据
SELECT * FROM OpenDataSource( 'Microsoft.Jet.OLEDB.4.0', 'Data Source="e: \\xx.mdb";User ID=Admin;Password=;Jet OLEDB:Database Password=123456')...gouqi
2、将access 中数据导入到sql2008中
SELECT * into sql表名 FROM OpenDataSource( 'Microsoft.Jet.OLEDB.4.0', 'Data Source="e: \\xx.mdb";User ID=Admin;Password=;Jet OLEDB:Database Password=123456')...access表名

注:'sql表名' 不要事先建好!!!
二:Excel数据
   1、向现有表中导入数据
INSERT INTO 表 SELECT * FROM OPENROWSET('MICROSOFT.JET.OLEDB.4.0','Excel 5.0;HDR=YES;DATABASE=c:\test.xls',sheet1$)
  2、导入数据并新增表
SELECT * INTO 表 FROM OPENROWSET('MICROSOFT.JET.OLEDB.4.0','Excel 5.0;HDR=YES;DATABASE=c:\test.xls',sheet1$)
  3、导入部分列到表中
INSERT INTO 表 (a1,a2,a3) SELECT a1,a2,a3 FROM OPENROWSET('MICROSOFT.JET.OLEDB.4.0','Excel 5.0;HDR=YES;DATABASE=c:\test.xls',sheet1$)
   4、更新表
update tc set aaa=bbb
from A a,OPENROWSET('MICROSOFT.JET.OLEDB.4.0','Excel 5.0;HDR=YES;DATABASE=c:\test.xls',sheet1$) b
where a.id=b.id;三:过程中遇到的问题备忘
   1、查不出来【移步这里】
     1.1:引用
消息 15281,级别 16,状态 1,第 1 行
SQL Server 阻止了对组件 'Ad Hoc Distributed Queries' 的 STATEMENT 'OpenRowset/OpenDatasource' 的访问,因为此组件已作为此服务器安全配置的一部分而被关闭。系统管理员可以通过使用 sp_configure 启用 'Ad Hoc Distributed Queries'。有关启用 'Ad Hoc Distributed Queries' 的详细信息,请参阅 SQL Server 联机丛书中的 "外围应用配置器"。

http://blog.csdn.net/the_pain/archive/2009/04/23/4103518.aspx
     1.2:环境是:windows server 2008 r2  ,sql server 2008 查询时报:引用
消息 7308,级别 16,状态 1,第 2 行
因为 OLE DB 访问接口 'Microsoft.Jet.OLEDB.4.0' 配置为在单线程单元模式下运行,所以该访问接口无法用于分布式查询。

      解决:1、下载64位驱动http://www.microsoft.com/en-us/download/details.aspx?id=13255
            并将连接字符改成:Microsoft.ACE.OLEDB.12.0
   2、excel 导入库中为科学计算法显示
http://xinming-me.iyunv.com/blog/1490522
   网上的方法有可能还解决不了导入后是科学计算显示
   在生成excel时将所有内容转成字符或文本形式,比如,我是从查询结果中复制的数据,手工拷到excel表中的,我只要保证 查询出来的结果集 是文本就OK了。
   ->将excel 中的数据复制到 txt中;
   ->再将excel中的数据全部干掉;
   ->全选,设置一下excel 格式为文本
   ->从txt中重新将数据复制到excel表格中
   ->导入
4、表a,b  导入 表x
insert into x(cardnum,username,unitprice,zuihougouqiliang,buygasamount,beizhu)
select a.用户编号 cardnum,a.用户姓名 username,a.购气价格 unitprice,
b.购气数量 zuihougouqiliang,b.总气量 buygasamount,b.备用2 beizhu
from a left join b on (a.id=b.id)


-------------个人微信公众:youcode
DSC0000.jpg

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-220236-1-1.html 上篇帖子: Windows:通过GPO部署iTunes for Windows 下篇帖子: 实践证明,SQL Server 2000 + 2005 + 2008,完全可以共存
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表