高手进!asp连接access数据库时出现的怪问题

chimere 2005-06-10 04:16:23
手边有一个asp文件,基本结构如下:

set conn=server.CreateObject("ADODB.Connection")
conn.open "DBQ=xxx.mdb;DefaultDir=;DRIVER={Microsoft Access Driver (*.mdb)}"

sql2="select * from [table1]"
set rs2=conn.execute(sql2)
....
rs2.close
set rs2=nothing


....


set rs2=conn.execute(sql2)
....
rs2.close
set rs2=nothing

...


sql="select * from table2"
set rs=server.createobject("adodb.recordset")
rs.open sql,conn,1,1
if rs.bof and rs.eof then
rs.close()
conn.close()
Response.Write("no data in table2!")
else
...
rs.close
set rs=nothing
conn.close
conn=nothing

同一个ACCESS数据库文件,两个不同的表,记录都不为空
内部网络测试,2000server,架设到IIS服务器上后,以上部分运行正常,无任何报错,运行过程中.mdb文件没有被锁定

但是,移动到外面一个MS Hosting上以后就出现:
1.前两次用rs2.open取得的记录正常,即,可以正常从table1中查询到数据并做相应处理
2.rs查询表table2的时候查不到数据(rs.bof=true and rs.eof=true),一直显示"no data in table2"
3..mdb文件被锁(生成.ldb),即时关闭请求锁定也不被解除

现在我实在找不出程序的错误.应该没错的,否则在内部服务器上测试的时候肯定出现同样的问题,不可能顺利运行啊~~~
不了解会不会是对方服务器配置有问题.
那位高手有过类似的经历和经验,帮忙提示一下~~~
谢谢!
...全文
311 14 打赏 收藏 转发到动态 举报
写回复
用AI写文章
14 条回复
切换为时间正序
请发表友善的回复…
发表回复
chimere 2005-06-13
  • 打赏
  • 举报
回复
re:蒋健华 谢谢回复!
server.mappath()这个我也试过了,没效果~~
我试试问问他们的技术吧!看看是不是他们的问题
chimere 2005-06-13
  • 打赏
  • 举报
回复
问题解决了!感谢各位的帮忙!友情散分!
原因: 主机服务器是德文操作系统, 我的access默认建立数据库的时候使用的排序方式是"汉语拼音",很明显服务器不可能支持.
解决方法:排序方式修改成常规,然后压缩数据库.
现在基本上没问题了,还待继续观察.
蒋健华 2005-06-13
  • 打赏
  • 举报
回复
那就一定要让对方开启错误提示,否则 你根本无从下手....... 我以前也遇到过这种情况的....直接,简单的就是找ISP
蒋健华 2005-06-12
  • 打赏
  • 举报
回复
conn.open "DBQ=xxx.mdb;DefaultDir=;DRIVER={Microsoft Access Driver (*.mdb)}"

1 将dbq的属性设置改成server.mappath的形式试一试 不过我想如果能运行 这不是主要问题
2 向对方ISP请求技术援助,请求开启错误提示,查看具体错误原因
chimere 2005-06-12
  • 打赏
  • 举报
回复
re:lshk 谢谢你的回复!

不是我不想放全部代码...实在是..太乱了,而且很多,怕大家看了反而头晕. 不过我上面部分就是把代码中不相关的部分剔除掉以后,塞出来的,就是上面的顺序. 如果真的需要的话,下次我可以把全部代码贴进去.
chimere 2005-06-12
  • 打赏
  • 举报
回复
问一下大家,如果代码有问题的话,在内网测试的时候有可能通过的嘛?
我现在是想确定一下是否可能是那边给提供的空间配置有问题,大概是什么问题,以便直接跟那边的技术人员沟通~~~
或者,如果是代码需要优化的话...又应该主要注意哪些地方?
谢谢!
lshk520 2005-06-10
  • 打赏
  • 举报
回复
最好把代码全放上来!
lshk520 2005-06-10
  • 打赏
  • 举报
回复
看看你的程序执行顺序有没有错!
chimere 2005-06-10
  • 打赏
  • 举报
回复
up! 一会儿下班之前再up一下,别沉了~~~
chimere 2005-06-10
  • 打赏
  • 举报
回复
no 效果. 我连直接 set rs=conn.execute(sql) 也试了,一样结果!
wangwm 2005-06-10
  • 打赏
  • 举报
回复
rs.open sql,conn,1,1
修改成rs.open sql,conn,1,3,再试一下
chimere 2005-06-10
  • 打赏
  • 举报
回复
sorry 星火,刚才我写错了个东西,你那个连接字符串可以用,不过问题还在!
内网里没问题,传到上边的服务器上就错了~~~~
我怀疑是服务器设置的问题,不过不太了解那方面,不敢确定
chimere 2005-06-10
  • 打赏
  • 举报
回复
你是说 : conn.open "Provider=Microsoft.Jet.OLEDB.4.0;DataSource=xxx.mdb" ???

本地都报错了...
wangwm 2005-06-10
  • 打赏
  • 举报
回复
数据库连接字符串修改一下

"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=xxx.mdb"试试

28,391

社区成员

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

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