文号
t33934
阅读
4549
回复
4
收藏
3
Asp+MySQL查询数据库
2011/05/31
IP:福建
<%
  If Trim(Request("name"))<>"" Then
       Set rs=Server.CreateObject("ADODB.Recordset")
       strSql="Select * From users Where name Like '%" & Trim(Request("name")) & "%'"
       rs.Open strSql,db,1                          
  If rs.RecordCount<=0 Then
       Response.Write "对不起,没有找到相关信息!"
  Else
       Response.Write "共找到" & rs.RecordCount & "条记录。"
%>

错误提示:
rs.Open strSql,db,1
参数类型不正确,或不在可以接受的范围之内,或与其他参数冲突。

怎么会错呢?数据库中字段name类型为varchar(32),要怎么实现asp查询数据库?还有数据输入。

把上面的改成通过Id查询(Id字段类型为int 11)
<%
  If Trim(Request("Id"))<>"" Then
       Set rs=Server.CreateObject("ADODB.Recordset")
       strSql="Select * From patientinfo Where Id="&request("Id")
       rs.Open strSql,conn,1,1
   If rs.RecordCount<=0 Then
       Response.Write "对不起,没有找到相关信息!"
   Else
       Response.Write "共找到" & rs.RecordCount & "条记录。"
%>
还是不可以,数据库中Id为1分明有记录,但是这一段代码还是只执行语句:Response.Write "对不起,没有找到相关信息!"

头疼!
15年7个月前IP:未同步
297442
1楼
[s:259]
恳请大牛出山,不胜感激
引用
评论
15年7个月前IP:未同步
297446
2楼
你确定你连接上mysql了?asp连mysql貌似要用数据源。。。。。你设置了么?
引用
评论
15年7个月前IP:未同步
297463
3楼
数据库连接没有问题,数据源经过测试了,可以从数据库读出数据。代码如下:
<%
    sql = "select * from patientinfo"  
    set rs = conn.execute(sql)
    if not rs.bof then
%>









<%
    do while not rs.eof
%>








<%
    rs.movenext
    loop
%>
住院号姓名病房号床位性别年龄
<%=rs("Id")%><%=rs("name")%><%=rs("roomnumber")%><%=rs("bednumber")%><%=rs("gender")%><%=rs("age")%>

<%
    else
    response.write("对不起,没有找到相关信息!")
    end if
    rs.close
    conn.close
    set conn = nothing
    set rs = nothing
%>

现在想做的就是根据输入的Id或者name输出对应的记录。
引用
评论
15年7个月前IP:未同步
297609
4楼
木有用过Asp[s:241].....不过,你为啥不把那段拼写之后的sql串log出来看看是虾米东西咧
引用
评论
笔记
{{note.content}}
{{n.user.username}}
{{fromNow(n.toc)}} {{n.status === noteStatus.disabled ? "已屏蔽" : ""}} {{n.status === noteStatus.unknown ? "正在审核" : ""}} {{n.status === noteStatus.deleted ? '已删除' : ''}}
  • 编辑
  • 删除
  • {{n.status === 'disabled' ? "解除屏蔽" : "屏蔽" }}
我也是有底线的