testa med att skriva så här
SQL = "Update wgPost SET PostTopic = '" & PostTopic & "', " & PostInline & " = '" & PostTextbox & "', PostFeatures = " & PostFeatures & " WHERE PostId = '" & Request.Querystring("id") "' "
8 svar · 441 visningar · startad av kickR
Hejsan.
Bytt igår från IIS 5.0 till 6.0 och började köra samma webbsida nyss igen.
Allt fungera fint till jag kommer till en UPDATE grejj där jag får följande fel.
Microsoft OLE DB Provider for ODBC Drivers fel '80040e10'
[Microsoft][Drivrutin för ODBC Microsoft Access] För få parametrar angavs. 2 förväntades.
/admin/post.asp, rad 117
Rad 117 lyder föjande
SQL = "Update wgPost SET PostTopic = '" & PostTopic & "', " & PostInline & " = '" & PostTextbox & "', PostFeatures = " & PostFeatures & " WHERE PostId = " & Request.Querystring("id")
Set updateNews = conn.Execute(SQL)
Vad av detta är det som fungerar på IIS 5.0 och inte på 6.0??
testa med att skriva så här
SQL = "Update wgPost SET PostTopic = '" & PostTopic & "', " & PostInline & " = '" & PostTextbox & "', PostFeatures = " & PostFeatures & " WHERE PostId = '" & Request.Querystring("id") "' "
gick inte alls bra =(
Har hittat felet.
Feler är när det kommer till True och False.
I min kod har jag gjort så här.
If Request.Form("wgBR") = "True" Then
PageBR = False
Else
PageBR = True
End If
och så när jag updaterar så skriver jag så här:
... wgPostContentBR = " & PageBR & " ...
men då blir fel. Men om jag då ändrar till detta så fungerar det fint.
... wgPostContentBR = True ...
Hur skall jag göra för att det skall fungera utan att bevöva bestämma om det skall vara true eller false i update stringen?
Löste problemet genom att:
PageBR = "False"
istället för
PageBR = False
Skumt dock att det fungerade på IIS 5.0.
Om du har ett svenskt OS så är true = Sant. Dvs:
PageBr = True
resulterar i:
fldFoo = Sant
i SQL-frågan. I SQL-frågor ska man ange True eller False, inte Sant eller Falskt.
Inte konstigt mao, och använd funktionen "Acceptera som slutgiltigt svar".
mvh
@nders; går det inte att även använda 1 och 0 för true/false?
HEJ!
För att göra allt enklare används 0/1 i SQL-server, och 0/-1 i Access.
Icke bock/bock - false/true alltså.
Att -1 är true tycker jag är lurigt, eftersom det är negativt, och därför borde vara felaktigt, dvs false.
Detta är en sak att tänka på när man byter databastyp.