请教如下的ASP语句有什么问题呢

robish_hy 2009-07-30 10:15:42
大家好我的ASP查询经常遇到如下问题
Microsoft OLE DB Provider for ODBC Drivers (0x80040E31)
[Microsoft][ODBC SQL Server Driver]超时已过期
请大家帮忙看下是什么原因呢,万分感谢:以下是代码
<%
ms = Request.QueryString("ms")
if ms <>"" then
dim ms_num
Set ms_num=Server.CreateObject("adodb.recordset")
dim sql1981
sql1981="select mod_firm from NUM_to_Mobile where mobile='"&ms&"'"
ms_num.open sql1981, conn198,3,3
if ms_num.EOF then
Response.Write("没有查到该终端的数据类型")
else
dim no
no = ms_num("mod_firm")
Response.Write(no)
end if
%>
</p>
<p>
                     使用该终端的手机号码有<br>
<%
dim po
Set po=Server.CreateObject("adodb.recordset")
dim sql1982
sql1982="select phonenumber from no_to_imsi where '46003'++imsia in(select imsi from CDMA_1X_Data_V12 where CAST(ucmob_model AS VARCHAR(20)) + '-' + CAST(wMOB_FIRM_REV AS VARCHAR(20)) = '"&no&"')"
po.open sql1982, conn198,3,3
if po.EOF then
Response.Write("该终端在1周内无进行任何呼叫")
else
response.write "一共搜索到"&po.recordcount &"条记录"&"<br>"
do while not PO.eof
response.write po(0)&" <br>"
po.movenext
loop
end if
po.close
set po=nothing
end if
%>
</p>

我在服务器上用查询语句,能够得出结果
...全文
90 13 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
13 条回复
切换为时间正序
请发表友善的回复…
发表回复
robish_hy 2009-08-27
  • 打赏
  • 举报
回复
查询速度过慢,除开在我的语句中改善外,还有在那些地方可以改善呢

这个语句在查询分析器里面的得出结果,只是时间比较长而已
robish_hy 2009-07-30
  • 打赏
  • 举报
回复
运行到这里就不行了~~
就超时了
po.open sql1982, conn198,3,3
怎么办呢~~~~
黑心 2009-07-30
  • 打赏
  • 举报
回复
其它

你可以把语句一步步的减化,再运行页面,看到底问题出在哪儿。
黑心 2009-07-30
  • 打赏
  • 举报
回复
在顶前边加上:

Server.ScriptTimeout=99999
robish_hy 2009-07-30
  • 打赏
  • 举报
回复
请问有人帮忙吗 ,我真的很急啊
robish_hy 2009-07-30
  • 打赏
  • 举报
回复
要再所有的IMSIA 前面 加上46003 然后进行查询
黑心 2009-07-30
  • 打赏
  • 举报
回复
sql1982="select phonenumber from no_to_imsi where '46003'++imsia in(select imsi from CDMA_1X_Data_V12 where CAST(ucmob_model AS VARCHAR(20)) + '-' + CAST(wMOB_FIRM_REV AS VARCHAR(20)) = '"&no&"')"


'46003'++imsia
这是啥玩意儿?
robish_hy 2009-07-30
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 fumingk 的回复:]
sql1981="select mod_firm  from NUM_to_Mobile where mobile="&ms
[/Quote]

有问题吗?
fumingk 2009-07-30
  • 打赏
  • 举报
回复
sql1981="select mod_firm from NUM_to_Mobile where mobile="&ms
robish_hy 2009-07-30
  • 打赏
  • 举报
回复
连接数据库的语言是这样子写的
<%
Dim conn198 '连接数据库
Set conn198 = CreateObject("ADODB.Connection")
conn198.ConnectionTimeout=99999
Dim strConn198
strConn198 ="driver={SQL server};server=133.37.128.198;uid=sa;pwd=asdf;database=ZXPOS_CNO_CDT_chengdu"
conn198.Open strConn198
%>
hookee 2009-07-30
  • 打赏
  • 举报
回复
conn198关闭了吗?
conn198.close
set conn = nothing
toury 2009-07-30
  • 打赏
  • 举报
回复
sql1982="select phonenumber from no_to_imsi where '46003'++imsia in(select imsi from CDMA_1X_Data_V12 where CAST(ucmob_model AS VARCHAR(20)) + '-' + CAST(wMOB_FIRM_REV AS VARCHAR(20)) = '"&no&"')"
response.write sql1982&"<br>"
打印出来看看什么问题。看不出来放查询器里走一下就知道了

where '46003'++imsia in是不是改为where ('46003'+imsia) in试一下
黑心 2009-07-30
  • 打赏
  • 举报
回复
sql1982="select phonenumber from no_to_imsi where '46003'++imsia in(select imsi from CDMA_1X_Data_V12 where CAST(ucmob_model AS VARCHAR(20)) + '-' + CAST(wMOB_FIRM_REV AS VARCHAR(20)) = '"&no&"')"

问题找到了,还是这句sql1982,得优化语句。

28,409

社区成员

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

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