怎样直接从Excel表中的数据导入到物理表中?

linaren 2004-04-23 01:15:12
物理表的结构与Excel表格形式一致,
我试验这样做:先从Excel中取数据 ,在insert语句插入
但问题这样的效率太低了,不能达到要求

有其它办法使效率提高的吗?谢谢!
...全文
63 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
linaren 2004-04-24
  • 打赏
  • 举报
回复
还有个问题:导入时不是对应列的导入,好像按数据类型顺序导入的
比如:前两列是字符型的,后面几列是数字型的
导入结果是前两列的数据导入到物理表的后两列了(物理表的列都是字符型的)
这怎样解决?
chenczx1 2004-04-23
  • 打赏
  • 举报
回复
调用用DTS,很快的方便,
zjcxc 元老 2004-04-23
  • 打赏
  • 举报
回复
要求excel文件在SQL服务器上.
而且要求你登陆SQL的用户是系统管理员,如sa才行.
---涛声依旧--- 2004-04-23
  • 打赏
  • 举报
回复
多用几條insert 語句
如﹕
insert into 表 select * from
OPENROWSET('MICROSOFT.JET.OLEDB.4.0'
,'Excel 5.0;HDR=YES;DATABASE=c:\test.xls',sheet2$)

insert into 表 select * from
OPENROWSET('MICROSOFT.JET.OLEDB.4.0'
,'Excel 5.0;HDR=YES;DATABASE=c:\test.xls',sheet3$)
linaren 2004-04-23
  • 打赏
  • 举报
回复
允许出现如下错误提示:
OLE DB 提供程序 'MICROSOFT.JET.OLEDB.4.0' 报错。提供程序未给出有关错误的任何信息。
linaren 2004-04-23
  • 打赏
  • 举报
回复
多页后面怎么写?有sheet1,sheet2,sheet3...
insert into 表 select * from
OPENROWSET('MICROSOFT.JET.OLEDB.4.0'
,'Excel 5.0;HDR=YES;DATABASE=c:\test.xls',sheet1$)
zjcxc 元老 2004-04-23
  • 打赏
  • 举报
回复
--如果接受数据导入的表已经存在
insert into 表 select * from
OPENROWSET('MICROSOFT.JET.OLEDB.4.0'
,'Excel 5.0;HDR=YES;DATABASE=c:\test.xls',sheet1$)

--如果导入数据并生成表
select * into 表 from
OPENROWSET('MICROSOFT.JET.OLEDB.4.0'
,'Excel 5.0;HDR=YES;DATABASE=c:\test.xls',sheet1$)
linaren 2004-04-23
  • 打赏
  • 举报
回复
是用程序实现的
internetcsdn 2004-04-23
  • 打赏
  • 举报
回复
右键单击表名-所有任务-导入数据

34,873

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
  • 基础类社区
  • 二月十六
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧