excel 导入sql数据出现 权限错误(在线等,急!)

qinjiao 2009-06-10 10:20:55
我在本地测试是正确的,可是放到服务器上后出现了错误,错误如下:
Microsoft JET Database Engine 错误 '80004005'

'C:\Documents and Settings\Administrator\桌面\文件名\guhua.xls'不是一个有效的路径。 确定路径名称拼写是否正确,以及是否连接到文件存放的服务器。

导入界面

代码如下;
<form id="form1" name="form1" method="post" action="broad_add_excel.asp">
<table cellpadding="0" cellspacing="0" border="0" width="98%" align="center" class="table_southidc">

<tr>
<td class="back_southidc" height="25" align="center" colspan="2"><span class="tit" style="color: #FF0000"><b>宽带续费导入</b></span></td>
</tr>
<tr class="tr_southidc">
<td width="24%"><span style="color: #FF0000">   新装年月:
<input id="Year_Mon" name="Year_Mon" type="text" size="12" />
<img onClick="WdatePicker({el:$dp.$('Year_Mon'),skin:'whyGreen',dateFmt:'yyyy-MM'})" src="skin/datePicker.gif" width="16" height="22" align="absmiddle">
</span></td>
<td width="76%" height="28"><div align="center" style="color: #FF0000">

请选择要导入的Excel:
<input name="excel_name" type="file" id="excel_name" title="请选择需要导入的Excel文件" size="30"> <input name="Submit1" type="submit" id="Submit1" value="开始导入">
</div> </td>

</tr>
</table>
</form>

broad_add_excel.asp 代码

'Excel连接驱动
aaa="provider=Microsoft.Jet.OLEDB.4.0; Data Source="&aa&";Extended Properties=Excel 8.0"


set StrConnect=CreateObject("ADODB.Connection")
StrConnect.Open aaa


Set objConn=CreateObject("ADODB.Connection")

objConn.Open StrConnect

'注意 表名一定要以下边这种格试 "[表名$]" 书写
Set rs = Server.CreateObject("ADODB.Recordset")
Sql="select * from [sheet1$] "
rs.Open Sql,StrConnect,2,2
cc=rs.recordcount
IF not rs.Eof then
...全文
129 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
wufucai 2009-06-10
  • 打赏
  • 举报
回复
百度一下,很多例子的
qinjiao 2009-06-10
  • 打赏
  • 举报
回复
各大侠快帮帮忙啊
qinjiao 2009-06-10
  • 打赏
  • 举报
回复
我是楼主,我知道要上传到服务器上了,能不能提供一个比较好的上传代码?谢谢各位大侠了
lzj34 2009-06-10
  • 打赏
  • 举报
回复
搞清楚服务端和客户端,你要在服务器上打开文件,不是在服务器上调用本地的路径上的文件,需要把excel上传到服务器再打开
Jasun_Li 2009-06-10
  • 打赏
  • 举报
回复
同意上面说的,文件要上传到服务器,并且要取得上传后的 XLS 文件路径 后读取
qinjiao 2009-06-10
  • 打赏
  • 举报
回复
能提供比较好的上传代码及读完后删除上传的文件?
gingerkang 2009-06-10
  • 打赏
  • 举报
回复
服了2楼...

搞清楚服务端和客户端,你要在服务器上打开文件,不是在服务器上调用本地的路径上的文件,需要把excel上传到服务器再打开
江浪888 2009-06-10
  • 打赏
  • 举报
回复
楼上正解
qinjiao 2009-06-10
  • 打赏
  • 举报
回复
broad_add_excel.asp 代码



if trim(request.form("excel_name"))<>"" then
aa=trim(request.form("excel_name")) '获取传递过来的值
end if

'Excel连接驱动
aaa="provider=Microsoft.Jet.OLEDB.4.0; Data Source="&aa&";Extended Properties=Excel 8.0"


set StrConnect=CreateObject("ADODB.Connection")
StrConnect.Open aaa


Set objConn=CreateObject("ADODB.Connection")

objConn.Open StrConnect

'注意 表名一定要以下边这种格试 "[表名$]" 书写
Set rs = Server.CreateObject("ADODB.Recordset")
Sql="select * from [sheet1$] "
rs.Open Sql,StrConnect,2,2
cc=rs.recordcount
IF not rs.Eof then
SP操作Excel技术总结 目录 一、 环境配置 二、 ASP对Excel的基本操作 三、 ASP操作Excel生成数据表 四、 ASP操作Excel生成Chart图 五、 服务器端Excel文件浏览、下载、删除方案 六、 附录 正文 一、 环境配置 服务器端的环境配置从参考资料上看,微软系列的配置应该都行,即: 1.Win9x+PWS+Office 2.Win2000 Professional+PWS+Office 3.Win2000 Server+IIS+Office 目前笔者测试成功的环境是后二者。Office的版本没有特殊要求,考虑到客户机配置的不确定性和下兼容特性,建议服务器端Office版本不要太高,以防止客户机下载后无法正确显示。 服务器端环境配置还有两个偶然的发现是: 1. 笔者开发机器上原来装有金山的WPS2002,结果Excel对象创建始终出现问题,卸载WPS2002后,错误消失。 2. 笔者开发ASP代码喜欢用FrontPage,结果发现如果FrontPage打开(服务器端),对象创建出现不稳定现象,时而成功时而不成功。扩展考察后发现,Office系列的软件如果在服务器端运行,则Excel对象的创建很难成功。 服务器端还必须要设置的一点是COM组件的操作权限。在命令行键入“DCOMCNFG”,则进入COM组件配置界面,选择Microsoft Excel后点击属性按钮,将三个单选项一律选择自定义,编辑中将Everyone加入所有权限。保存完毕后重新启动服务器。 客户端的环境配置没发现什么特别讲究的地方,只要装有Office和IE即可,版本通用的好象都可以。 二、 ASP对Excel的基本操作 1、 建立Excel对象 set objExcelApp = CreateObject("Excel.Application") objExcelApp.DisplayAlerts = false 不显示警告 objExcelApp.Application.Visible = false 不显示界面 2、 新建Excel文件 objExcelApp.WorkBooks.add set objExcelBook = objExcelApp.ActiveWorkBook set objExcelSheets = objExcelBook.Worksheets set objExcelSheet = objExcelBook.Sheets(1) 3、 读取已有Excel文件 strAddr = Server.MapPath(".") objExcelApp.WorkBooks.Open(strAddr & "\Templet\Table.xls") set objExcelBook = objExcelApp.ActiveWorkBook set objExcelSheets = objExcelBook.Worksheets set objExcelSheet = objExcelBook.Sheets(1) 4、 另存Excel文件 objExcelBook.SaveAs strAddr & "\Temp\Table.xls" 5、 保存Excel文件 objExcelBook.Save (笔者测试时保存成功,页面报错。) 6、 退出Excel操作 objExcelApp.Quit 一定要退出 set objExcelApp = Nothing 三、 ASP操作Excel生成数据表 1、 在一个范围内插入数据 objExcelSheet.Range("B3:k3").Value = Array("67", "87", "5", "9", "7", "45", "45", "54", "54", "10") 2、 在一个单元格内插入数据 objExcelSheet.Cells(3,1).Value="Internet Explorer" 3、 选中一个范围 4、 单元格左边画粗线条 5、 单元格右边画粗线条 6、 单元格上边画粗线条 7、 单元格下边画粗线条 8、 单元格设定背景色 9、 合并单元格 10、 插入行 11、 插入列 四、 ASP操作Excel生成Chart图 1、 创建Chart图 objExcelApp.Charts.Add 2、 设定Chart图种类 objExcelApp.ActiveChart.ChartType = 97 注:二维折线图,4;二维饼图,5;二维柱形图,51 3、 设定Chart图标题 objExcelApp.ActiveChart.HasTitle = True objExcelApp.ActiveChart.ChartTitle.Text = "A test Chart" 4、 通过表格数据设定图形 objExcelApp.ActiveChart.SetSourceData objExcelSheet.Range("A1:k5"),1 5、 直接设定图形数据(推荐) objExcelApp.ActiveChart.SeriesCollection.NewSeries objExcelApp.ActiveChart.SeriesCollection(1).Name = "=""333""" objExcelApp.ActiveChart.SeriesCollection(1).Values = "={1,4,5,6,2}" 6、 绑定Chart图 objExcelApp.ActiveChart.Location 1 7、 显示数据表 objExcelApp.ActiveChart.HasDataTable = True 8、 显示图例 objExcelApp.ActiveChart.DataTable.ShowLegendKey = True 五、 服务器端Excel文件浏览、下载、删除方案 浏览的解决方法很多,“Location.href=”,“Navigate”,“Response.Redirect”都可以实现,建议用客户端的方法,原因是给服务器更多的时间生成Excel文件。 下载的实现要麻烦一些。用网上现成的服务器端下载组件或自己定制开发一个组件是比较好的方案。另外一种方法是在客户端操作Excel组件,由客户端操作服务器端Excel文件另存至客户端。这种方法要求客户端开放不安全ActiveX控件的操作权限,考虑到通知每个客户将服务器设置为可信站点的麻烦程度建议还是用第一个方法比较省事。 删除方案由三部分组成: A: 同一用户生成的Excel文件用同一个文件名,文件名可用用户ID号或SessionID号等可确信不重复字符串组成。这样新文件生成时自动覆盖上一文件。 B: 在Global.asa文件中设置Session_onEnd事件激发时,删除这个用户的Excel暂存文件。 C: 在Global.asa文件中设置Application_onStart事件激发时,删除暂存目录下的所有文件。 注:建议目录结构 \Src 代码目录 \Templet 模板目录 \Temp 暂存目录 六、 附录 出错时Excel出现的死进程出现是一件很头疼的事情。在每个文件前加上“On Error Resume Next”将有助于改善这种情况,因为它会不管文件是否产生错误都坚持执行到“Application.Quit”,保证每次程序执行完不留下死进程。 补充两点: 1、其他Excel具体操作可以通过录制宏来解决。 2、服务器端打开SQL企业管理器也会产生问题。 New Document
功能: 直接运行 自带网站发布,使用access数据库,无法额外安装服务器,方便新手。(也可以使用sql server数据库,建表baike.sql。) 导入导出 支持批量文本(txt或者htm)导入数据库,导入时支持TXT采用第一行作为标题,网页文件采用页面title作为标题。 支持excel数据导入数据库。 支持单个文本自定义格式(如mdx源文件格式)导入数据库。 支持从数据库直接导出数据为mdx源文件,即可用MdxBuilder直接转换为MDX词典。 导入导出进度条显示。 下载编辑 支持可视化编辑。 支持库里没有的关键词直接从互联网(百度百科、中文维基、英文维基、日文维基、百度词典 )提取。 可下载结构比较简单的网站,支持按页面链接嗅探、按编号、按字典下载。 支持图片上传缩放尺寸,此功能需要aspjpeg组件支持。 可设定图片新目录,可以按类别导出类别标题目录。 支持创建目录。支持插入编辑表格。 支持高级修改时,下载复制到编辑框里的图片到本地 支持自建多个数据库。 最后修改:2012-11-28 15:30 在此时间前下载的请重新下载,注意覆盖时data目录下数据库不要覆盖。 2013-4-11 百度百科编码变为utf-8,在线提取乱码的解决方法:修改dbkbk62.asp 大约第450行 修改 case 1 webbianma="gb2312"为 case 1 webbianma="utf-8"即可 2012-11-28 修改内容,百度百科在线提取的bug修补。 2012-11-6 /11-16修改内容,在线提取bug修补。 2012-11-1 修改内容,提高兼容性,部分bug修补。 2012-10-26 修改内容,支持excel数据导入数据库。 2012-10-22 修改内容,部分bug修补,这次进行了数据库的升级,对于旧库请执行update_sql.asp进行升级 2012-9-7修改内容,修复百度百科在线提取的格式错乱问题。 2011-4-19 修改内容:支持危机百科有图提取 ,修复了不能导入词条名称的错误 调整了图片下载 提取危机时 可设置一些参数 方法详见 wiki.asp 修正一些bug 补充了sql说明 增加了一个直接操作数据库的页面sql.asp 使用方法: 下载解压到硬盘上,执行NetBox.exe 即可 在浏览器输入http://127.0.0.1/就可以进入系统 默认占用80端口,本机安装有web服务器可自行配置 注意事项: 如果把数据库设在ntfs分区,请给予目录的Everyone用户以写的权限。右键-属性-安全-添加Everyone用户-赋予全部权限。 制作词典时,把设定图片目录down(下载的图片)、down2(本地上传的图片)、downn(多图片)拷贝到一个文件夹下,如image,在使用MdxBuilder制作词库时,将Data路径指向上面存放数据的目录image,如果设置了新的图片目录,则不需要拷贝。 系统不能直接生成Mdx文件,而是生成Mdxbuilder可以编译的文件。 以下问题一般不会出现 请确保服务器支持FSO,否则可能部分功能无法使用,请注册scrrun.dll,xp、2003、win7在CMD 命令行状态输入以下命令:RegSvr32 scrrun.dll 下载数据报“未能访问‘CDO.Message’对象”错误,在CMD 命令行状态输入以下命令:regsvr32 cdonts.dll,找不到文件可以到网上下一个放到windows/system32下。 不能访问数据库,请安装 MDAC 2.8 。

28,390

社区成员

发帖
与我相关
我的任务
社区描述
ASP即Active Server Pages,是Microsoft公司开发的服务器端脚本环境。
社区管理员
  • ASP
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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