nille99Medlem sedan aug. 2002352 inlägg jag får ett felmeddelande när jag ska spara ett formulär
ADODB.Recordset.1 error '80004005'
SQLState: 42S22
Native Error Code: 1054
[TCX][MyODBC]Unknown column 'sum_left_side' in 'where clause'
/kalle/ext_add.asp, line 621
i databasen har jag "sum_left_side"
rad 621 är
RecSet.Update
RecSet.close
Set RecSet = nothing
Engine^Medlem sedan dec. 20003 887 inlägg Det är inte rad 621 det är fel på utan den rad där du definierar din sql-sats.
Visa lite mer kod...
nille99Medlem sedan aug. 2002352 inlägg [kod]
Set RecSet = Server.CreateObject("ADODB.Recordset")
varId = request.querystring("id")
Addera = "Select * From tabel WHERE raknare = " & varID & " "
RecSet.Open Addera, Connect, adOpenStatic, adLockOptimistic
if Request.Form("namn") = "" then
RecSet("namn") = ""
else
RecSet("namn") = Request.Form("namn")
end if
if request.form("sum_left_side") = "" then
RecSet("sum_left_side") = 0
else
RecSet("sum_left_side") = Round(request.form("sum_left_side"),2)
end if
RecSet.Update
RecSet.close
Set RecSet = nothing
Engine^Medlem sedan dec. 20003 887 inlägg Din tabell innehåller ingen kolumn som heter sum_left_side?
PatrikBMedlem sedan mars 20002 836 inlägg Lär inte funka ändå då recordsetet är serverside.
För att kunna köra uppdateringar med ADODB.Recordset mot mySQL så måste recordsetet vara clientside.
Testa denna kod (lite "optimeringar")
strName = "" & Request.Form("namn")
lngSumLeftSide = Request.Form("sum_left_side")
If Len(strSumLeftSide) = 0 Then lngSumLeftSide = 0
Set RecSet = Server.CreateObject("ADODB.Recordset")
RecSet.CursorLocation = 3 '## -- adUseClient (client-side recordset)
varId = request.querystring("id")
Addera = "Select * From tabel WHERE raknare = " & varID & " "
RecSet.Open Addera, Connect, adOpenStatic, adLockOptimistic
'## -- kontrollera att du har en post att uppdatera --
If Not RecSet.EOF Then
RecSet("namn") = strName
RecSet("sum_left_side") = lngSumLeftSide
RecSet.Update
End If
RecSet.close
Set RecSet = nothing
pssst, kör raka sql-frågor mot conn-objektet istället för att använda ADODB.Recordset
cya,
PatrikB
Engine^Medlem sedan dec. 20003 887 inlägg Du menar som
Addera = "UPDATE tabel SET namn = '" & strName & "', sum_left_side = " & lngSumLeftSide & _
" WHERE raknare = " & varID & ";"
[i]connection[/i].Execute Addera, , 128
?
PatrikBMedlem sedan mars 20002 836 inlägg Jepp, helt klart att föredra .........
cya,
PatrikB