请帮忙看一下这段asp代码应该怎么改。谢谢!(连sql)
代码:
<html>
<head>
<title>notitle</title>
</head>
<body>
<%
Set conn=Server.CreateObject("ADODB.Connection")
sql="Provider=SQLoledb;data source=CNJNCZFILE01;UID=JNOP;PWD=OPJN;Initial Catalog=Jinan;Integrated Security=SSPI"
conn.Open sql
If conn.state=2 Then
Response.Write("正在连接")
ElseIf conn.state=1 Then
Response.Write("连接已经打开")
Else
Response.Write("对不起,无法打开连接")
End If
%>
<%
exec="select * from DMlist"
set rs=server.createobject("adodb.recordset")
rs.open exec,conn,1,1
if not rs.bof and not rs.eof then
while not rs.eof
response.write("Dept:"+rs("Dept")+"<br>")
response.write("Itemcode:"+rs("Itemcode")+"<br>")
response.write("Chinese Name:"+rs("Chinese Name")+"<br>")
response.write("English Name:"+rs("English Name")+"<br>")
response.write("PSP:"+rs("PSP")+"<br>")
response.write("Period:"+rs("Period")+"<br>")
rs.movenext
next
end if
%>
</body>
</html>
错误提示:
Microsoft VBScript compilation error '800a041f'
Unexpected 'Next'
/default.asp, line 34
next
^
这是上一个问题的链接:
http://zhidao.zhaoxi.net/question/273789521.html
问题尚未解决追问不起了。呵呵。
我分段测试过,到检测链接那是显示“链接已打开”的。再加上后面的就开始报错了。请各位老大指教。
追问:连接已经打开Dept:10
Itemcode:100068
Chinese Name:百事
English Name: pepsi
Microsoft VBScript runtime error '800a000d'
Type mismatch: '[string: "PSP:"]'
/default.asp, line 30
难道是字段名错误,但是我打开sqlserver看过了里面就是“PSP”啊这个字段属性是float。应该怎么改才能显示出它来?psp是价格。原表中就是如此。是在不行可以把它改成文本字段也行。另外,这样显示出的结果怎么样才能显示成有边框像是表格那种形式的?<table></table>?,我把table放在最后一对<%%>的两边了,但是还是每件边框出现。
答案:额 还是那个朋友 是我给错了
循环语句 改成
while not rs.eof
改成
do while not rs.eof
next 改成 loop
不然就直接改next 为 wend
其他:一看你的循环就有问题了
do while not rs.eof
'..........
rs.movenext
loop
用do while 循环时,结束用loop(把你代码中的NEXT改为loop)
for i=1 to 100
'.................
rs.movenext
if rs.eof then exit for
next
用for 循环才用next结束
上一个:用netbox打包ASP后,怎么设置打开程序同时打开网页
下一个:我网站源码是asp的,什么也没改动,突然不能自动生成html 查看代码也没什么问题,高手指点是什么原因呢