-1

最后管理员为我配置了 IIS,下面列出了错误消息。设置 SQLStream = CreateObject("ADODB.Stream") 设置 SQLConnection = CreateObject("ADODB.Connection") 设置 SQLCommand = CreateObject("ADODB.Command") 设置 SQLRecordSet = CreateObject("ADODB.RecordSet") SQLConnection.Open "Provider= sqloledb;SERVER=SQLPROD;DATABASE=MyDataBase;UID=MyUsername;PWDMyPassword;"

    'Response.Write("Connection Status: " & SQLConnection.State) & vbnewline
    'Response.Write("Connection Provider: " & SQLConnection.Provider) & vbnewline
    'Response.Write("Version: " & SQLConnection.Version) & vbnewline

    SQLCommand.ActiveConnection = SQLConnection
    SQLCommand.CommandText = "SELECT Seminars.Year, Seminars.SeminarID, Seminars.Theme, Seminar_Week.First, Seminar_Week.Last, Seminar_Week.WeekID, Seminar_Week.Date, Seminar_Week.Affiliation FROM Seminars CROSS JOIN Seminar_Week"
    'Response.Write("SQL Command Passed in: " & SQLCommand.CommandText)

    Set adoRec = SQLCommand.Execute()
        file1 = "./seminars/" & seminar_type & "/" & seminar_year & "/" & adoRec("Date") & "-" & adoRec("Year") & "_" & adoRec("Last") & ".pdf"
        file2 = "./seminars/" & seminar_type & "/" & seminar_year & "/" & adoRec("Date") & "-" & seminar_year & "_" & adoRec("Last") & "(handouts).pdf"
        file3 = "./seminars/" & seminar_type & "/" & seminar_year & "/" & adoRec("Date") & "-" & seminar_year & "_" & adoRec("Last") & "_Flyer.pdf"
    Set fso = CreateObject("scripting.filesystemobject")
        Response.Write("<p style=" & "margin-left:10px;" & "><img src=" & "./img/right_arrowblue.png" & " alt=" & "Expand/Collapse" & " id=" & "arrow_" & adoRec("Week") & " /><strong>[" & adoRec("Date") & "]</strong> " & "<a href=" & "javascript:toggle('seminar_" & adoRec("Week") &"')"">"&aroRec("First") & adoRec("Last") & ", " & adoRec("Affiliation") & "</a></p>")

最后一行代码导致此错误

ADODB.Recordset 错误“800a0cc1”

在与请求的名称或序号对应的集合中找不到项目。

文件路径,第 244 行

第 244 行是最后一行代码,应该在网页上写下有关每个研讨会的一些信息。

我很确定此时我指向的文件路径不正确,因为我在所有不同的字符串的某个地方都有一个额外的空间。

我现在的问题是一开始的那些,意思是那些在

"<p style=" & "margin-left:10px;" & "><img src=" & "./img/right_arrowblue.png"

造成麻烦。

我也不熟悉使用“展开/折叠”,所以如果有人能告诉我更多关于这一点的信息。我正在尝试修复别人的代码,所以我有点落后于 8 号球。

4

3 回答 3

1

解决方案的一小步:

你的 SQL

"SELECT * FROM Seminars WHERE [SeminarID] = 5 ORDER BY DESC"

绝对是错误的:ORDER BY 需要(至少)一个列名:ORDER BY [SeminarID] DESC。

如果这不能解决您的所有问题,我们将不得不考虑一步一步的方法。

如果您遇到错误,请告诉我们(编号、描述、行)。当我要求您发布它们时,这就是我的意思。如果您无法从 IIS 中获得比“处理 URL 时出错”更好的信息,那么您必须编写一些命令行脚本来完全正确地获取与数据库相关的代码。

从 Experiments.vbs 开始:

  Dim sCS : sCS     = !your connection string!
  Dim oCN : Set oCN = CreateObject("ADODB.Connection")
  oCN.Open sCS
  WScript.Echo "CN open:", oCN.State

  Dim sSQL : sSQL    = !your SQL statement!
  Dim oRS  : Set oRS = oCN.Execute(sSQL)
  WScript.Echo "RS EOF:", CStr(oRS.EOF)
  WScript.Echo "Frs Col:", oRS.Fields(0).Name, oRS.Fields(0).Type

  Dim i : i = 0
  Do Until oRS.EOF
     WScript.Echo i, oRS.Fields(0).Value
     i = i + 1
     oRS.MoveNext
  Loop
  oCN.Close

并在命令窗口(DOS 框)中运行它:cscript Experiments.vbs。这应该会给你一些类似的行:

CN open: 1
RS EOF: False
Frs Col: Id 3
0 ...
1 ...
2 ...

或聚焦/可发布的错误消息,例如:

... .vbs(2465, 14) Microsoft OLE DB Provider for SQL Server: Falsche Syntax in der Nä
he des 'DESC'-Schlüsselworts.

(DESC 附近的语法错误),当我尝试该语句时得到

"SELECT * FROM Alpha ORDER BY DESC"
于 2012-06-20T21:32:22.890 回答
1
RS.MoveNext

将上面的代码放在 Loop 关键字之前的行以避免无限循环。

于 2012-06-20T20:58:33.443 回答
0

您是否缺少loop循环块末尾的关键字?

在此处检查语法:http: //msdn.microsoft.com/en-us/library/eked04a7.aspx

于 2012-06-20T20:41:17.313 回答