注册 登录
编程论坛 ASP技术论坛

[求助]又是数据库连接的问题

jsl_9_14 发布于 2007-08-30 15:58, 442 次点击

我想做一个搜索页面可是遇到了一个问题:请各位看一看.代码如下:

....
set conn=server.createObject("ADODB.Connection")
dbpath=server.mappath("./news.asp")
conn.open "driver={Microsoft Access Driver (*.mdb)};dbq="&dbpath
set rs=server.createobject("adodb.recordset")

m=request("huangmu") '这是从表单得到的搜索项目,有两个值"A"和"B",分别表示按作者还是按内容搜.
a=request("neiyong") '这是从表单得到的搜索内容.
if m="A" then
sqltext="Select * from news where reporter="&a&" order by newsdate desc"
else
sqltext="Select * from news where content like "&a&" order by newsdate desc"
end if

rs.open sqltext,conn,3,1
rs.pagesize=30
If rs.RecordCount=0 Then
Emptyyn=true
Conn.close
.....

问题提示出在:rs.open sqltext,conn,3,1 这一句,错误类型:
Microsoft OLE DB Provider for ODBC Drivers (0x80040E10)
[Microsoft][ODBC Microsoft Access Driver] 参数不足,期待是 1。
我把3和1这两个数全都去掉也不行,在后面再添上一个参数"1"还是不行.请问这是怎么回事?

还有一个问题:sqltext="Select * from news where content like "&a&" order by newsdate desc"
这句代码我的意思是搜索content字段中包含a的记录,不知这样写能不能实现,请帮我看一看!!

4 回复
#2
madpbpl2007-08-30 16:18
sqltext="Select * from news where reporter="&a&" order by newsdate desc"
改成
sqltext="Select * from news where reporter='"& a &"' order by newsdate desc"
试试
再检查数据库表里是否有reporter或content这两个字段,有没有拼写错误
下面的sql语句同样修改
#3
jkll0071232007-08-30 17:08
if m="A" then
sqltext="Select * from news where reporter='"&a&"' order by newsdate desc"
else
sqltext="Select * from news where content like '%"&a&"%' order by newsdate desc"
end if

rs.open sqltext,conn,1,1
rs.pagesize=30
If rs.RecordCount=0 Then
Emptyyn=true
Conn.close
#4
jsl_9_142007-08-31 02:55
回复:(jsl_9_14)[求助]又是数据库连接的问题
实在是太感谢了.问题终于搞掂了.就是用的3楼的方法.多谢了3楼的兄弟.
这个论坛很棒,前次我遇到的问题也是在这里搞掂的.
谢谢了,回复我的兄弟们!!!
#5
multiple19O22007-08-31 06:31
以下是引用jsl_9_14在2007-8-31 2:55:01的发言:
实在是太感谢了.问题终于搞掂了.就是用的3楼的方法.多谢了3楼的兄弟.
这个论坛很棒,前次我遇到的问题也是在这里搞掂的.
谢谢了,回复我的兄弟们!!!

这位朋友的提问态度和解决问题的精神都很棒,值得大家学习,希望新手借鉴。

1