怪问题,希望兄弟们能给点意见,急,在线等

aspyaun 2009-07-06 04:06:41
数据库连接一
set conn=server.createobject("adodb.connection")
conn.open ("driver={SQL Server};server=localhost;uid=sa;pwd=;database=sxsql;")

数据库连接二
set conn=server.createobject("adodb.connection")
ConnStr = "Provider=Sqloledb; User ID="sa"; Password=""; Initial Catalog="blog"; Data Source="localhost";"

第一个问题,到底是driver={SQL Server}(连接一)还是Provider=Sqloledb(连接二)的速度快
第二个问题,如我选driver={SQL Server}(连接一)时

set rs=server.createobject("adodb.recordset")
sql="select top 1 * from news"
rs.open sql,conn,1,3
rs.addnew
rs("sName")=sName
rs.update
rs.close

是对的,但选Provider=Sqloledb(连接二)时出错,出现
"ADODB.Recordset 错误 '800a0cb3' 当前记录集不支持更新。这可能是提供程序的限制,也可能是选定锁定类型的限制。"

但我把改成sql="select * from news" 也就是说 top 1 去掉是对的,
但select * from news,我怕速度会慢,因为要把所以的记录读出来,肯定慢的

或者rs.open sql,conn,1,3前rs.cursorlocation=3,也是对的

问这是什么回事
...全文
36 11 打赏 收藏 转发到动态 举报
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
  • 打赏
  • 举报
回复
没有主键,用top 1容易出问错
aspyaun 2009-07-06
  • 打赏
  • 举报
回复
database=sxsql
Initial Catalog="blog"
看看两个数据库是不是都有news表

都是blog数据库,我写错,在blog数据库有news表
aspyaun 2009-07-06
  • 打赏
  • 举报
回复
第二个问题,
database=sxsql
Initial Catalog="blog"
看看两个数据库是不是都有news表

都是blog数据库,我写错的blog数据库有news表
野人丶嘎嘎 2009-07-06
  • 打赏
  • 举报
回复
好像問題解決了?··我還是記錄下
黑心 2009-07-06
  • 打赏
  • 举报
回复
第一个问题, 数据库连接二速度快
第二个问题,
database=sxsql
Initial Catalog="blog"
看看两个数据库是不是都有news表
aspyaun 2009-07-06
  • 打赏
  • 举报
回复
太谢谢toury!明白了
toury 2009-07-06
  • 打赏
  • 举报
回复
“第一个问题,到底是driver={SQL Server}(连接一)还是Provider=Sqloledb(连接二)的速度快 ”:OLEDB比ODBC快
aspyaun 2009-07-06
  • 打赏
  • 举报
回复
TO toury 网面, 2,给news表加个主键 对了,我加一个主键就对了
aspyaun 2009-07-06
  • 打赏
  • 举报
回复
TO ,谢mahui19780126!但为什么去掉top 1就可能呢
toury 2009-07-06
  • 打赏
  • 举报
回复
用OLEDB出问题,主要原因可能是数据库当前账户没有写权限 :
1,放开数据库文件夹的写入修改权限
2,给news表加个主键
mahui19780126 2009-07-06
  • 打赏
  • 举报
回复
快慢因该差不多都是adodb连接,我个人认为第2比较快。
报错的原因是你有空值,你做个判断。

28,406

社区成员

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

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