Microsoft OLE DB Provider for ODBC Drivers error '80040e14'
[Microsoft][ODBC Microsoft Access Driver] Syntax error. in query expression 'Sum(Select Count(Id) from Elitserien where (Sasong='2003-2004' And Omgang<= AND HemmaPeriod1Mal+HemmaPeriod2Mal+HemmaPeriod3Mal>BortaPeriod1Mal+BortaPeriod2Mal+BortaPeriod3Mal AND HemmaLag=Lag_i_Elitserien.Id))'.
/~m5798/Elitseriehemma_bortatabell.asp, line 9
Det här felmeddelandet får jag alltså bara när jag lagt ut sidan. Men när jag testar den här hemma, funkar den perfekt.
Det konstiga är att line 9 inte är den raden här ovan, så här ser rad 9 ut:If rstOmg.EOF Then
[Microsoft][ODBC Microsoft Access Driver] Syntax error. in query expression 'Sum(Select Count(Id) from Elitserien where (Sasong='2003-2004' And Omgang<= <här saknas ett värde> AND HemmaPeriod1Mal+HemmaPeriod2Mal+HemmaPeriod3Mal>BortaPeriod1Mal+BortaPeriod2Mal+BortaPeriod3Mal AND HemmaLag=Lag_i_Elitserien.Id))'.
Det ska inte vara något värde där, i alla fall inte när sidan startas.
Jag använder en dropdown som antingen väljer "alla" eller "omgångar", men det gäller först när sidan väl har kommit upp.
Den kör en sql som inte innehåller "Omgang". När man väljer en omgång så går den till en sql som ser ut så där.
Men tycker inte du att det är konstigt att det fungerar när jag testar här hemma?
Set objConnect = Server.CreateObject("ADODB.Connection")
objConnect.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source= "& Server.MapPath("../databas/Ishockey.mdb")
strSQL="SELECT DISTINCT Omgang AS Omg FROM Elitserien WHERE Sasong='" & Sasong2 & "'"
Set rstOmg = Server.Createobject("adodb.RecordSet")
rstOmg.Open strSQL, objConnect, 1, 2
If rstOmg.EOF Then
Response.Write("Ingen omgång funnen")
Else
Response.Write("<Form name=""omgang"" action="""& Request.ServerVariables("SCRIPT_NAME") & "?Sasong2=" & Sasong2 &""" method=""post"">")
Response.Write("<SELECT name=""omgang1"" OnChange=""this.form.submit();"">")
Response.Write("<OPTION value=""x"">-- VÄLJ --</OPTION>")
Response.Write("<OPTION value=0>Alla</OPTION>")
Do until rstOmg.EOF
Response.Write("<OPTION value=""" & rstOmg("Omg") & """>" &"Omgång " & rstOmg("Omg") & "</OPTION>")
rstOmg.MoveNext
Loop
Response.Write("</SELECT>")
End If
Response.Write "<BR>"
Response.Write "<BR>"
If request.form("omgang1") <> "" then
omgang1=request.form("omgang1")
End If
If Isnumeric(omgang1) then
If omgang1=0 Then
Sen kommer sql1
Else
Sen kommer sql2
End If
End If
sql'en är alldeles för stor, så jag tar inte med den. Men nu förstår du i alla fall ungefär hur det ser ut.