webForumDet fria alternativet

Sql ="update + Sql2 ="update

ASP

18 svar · 332 visningar · startad av CatZ

Medlem sedan jan. 20022 440 inlägg
Frågan#1

Jag begriper bevisligen inte så mycket än, därför försöker jag göra en UPDATE på 2 Tabeller direkt efter vartannat med Information från samma formulär?

SQL = "UPDATE Namn Set NnNamn = '" & Request.Form("NnNamn") & "', " & _
" NnEfter = '" & Request.Form("NnEfter") & "', " & _
" NnTelehem = '" & Request.Form("NnTelehem") & "', " & _
" NnTelejobb = '" & Request.Form("NnTelejobb") & "', " & _
" NnMobil = '" & Request.Form("NnMobil") & "', " & _
" NnKlubb = '" & Request.Form("NnKlubb") & "', " & _
" NnEpost = '" & Request.Form("NnEpost") & "', " & _
" NnLicens = '" & Request.Form("NnLicens") & "', " & _
" NnDiplomerad = '" & Request.Form("NnDiplomerad") & "', " & _
" NnMpnID = " & Request.Form("NnMpnID") & "" & _
" WHERE NnID = " & Request.Querystring("id")
OBJdbConnection.execute SQL,,128

Set rs2 = OBJdbConnection.execute("select @@identity")
SQL2 = "UPDATE styrelse Set Ordf = '" & Request.Form("Ordf") & "', " & _
" Sekr = '" & Request.Form("Sekr") & "', " & _
" Kass = '" & Request.Form("Kass") & "', " & _
" Valb = '" & Request.Form("Valb") & "', " & _
" Supp = '" & Request.Form("Supp") & "', " & _
" Revi = '" & Request.Form("Revi") & "', " & _
" Leda = '" & Request.Form("Leda") & "', " & _
" UngdOrdf ='" & Request.Form("UngdOrdf") & "', " & _
" Ungd = '" & Request.Form("Ungd") & "', " & _
" WHERE NnId =" & Request.QueryString("id")
OBJdbConnection.execute SQL2,,128
Response.Redirect("admin_register.asp")

På så sätt blir det fel iaf :q
Eller ska man göra
INSERT **** WHERE NnID = " & Request.Querystring("id") istället ?

Något tips ?

Medlem sedan feb. 200112 078 inlägg
#2

Det vanliga:

* Felmeddelande?
* Hur ser SQL-frågorna ut om du skriver ut dem?

Medlem sedan jan. 20022 440 inlägg
#3

Fråga 1
Feltyp:
Microsoft OLE DB Provider for ODBC Drivers (0x80040E14)
[Microsoft][Drivrutin för ODBC Microsoft Access] Syntaxfel i UPDATE-uttryck.
/admin/admin_register.asp, line 257

OBJdbConnection.execute SQL2,,128 << rad 257

Fråga 2
Fattar ingenting... skriver ut dem? :P

/
Skulle tro att det är sista raden som strular lite....

" WHERE NnID = " & Request.QueryString("id")

Medlem sedan feb. 20012 412 inlägg
#4

Skriv ut sql-frågan med response.write innan exekveringen:

...
...

response.write SQL2

'OBJdbConnection.execute SQL2,,128
Medlem sedan jan. 20022 440 inlägg
#5
UPDATE Namn Set 
NnNamn = 'Thomas', 
NnEfter = 'Whinter', 
NnTelehem = '', 
NnTelejobb = '', 
NnMobil = '', 
NnKlubb = '123', 
NnEpost = 'sydostra@algonet.se', 
NnLicens = '', 
NnDiplomerad = '', 
NnMpnID = 3522 
WHERE NnID = 2

UPDATE styrelse Set 
Ordf = '', 
Sekr = '', 
Kass = '', 
Valb = '', 
Supp = '', 
Revi = '', 
Leda = '', 
UngdOrdf ='', 
Ungd = '', 
WHERE NnId =2

Är där något fel ?

Medlem sedan feb. 20012 412 inlägg
#6

Hej!

Ja, du har massor av ställen där du inte skickar in något värde i SQL-frågan. Klura ut var värdena försvinner genom att skriva ut dem med response.write. Något stämmer inte på vägen fram till din update-fråga. Det jag kan tänka mig är att du stavat fel på dina formulärnamn.

Lycka till!

Mvh Jörgen HP

Medlem sedan jan. 20022 440 inlägg
#7

Jo men alla fälten ska ju inte behöva fyllas i.... värdena skickas inte därför att jag väljer att inte fylla i de egenskaperna :)

Nu lät jag helt nördig... nu tror ni inte jag begriper någonting.. men där det inte skickas något har jag inte fyllt i formuläret på de ställena....

Medlem sedan feb. 20022 594 inlägg
#8

Plocka bort kommat efter Ungd = ''

Medlem sedan jan. 20022 440 inlägg
#9

heh den såg jag inte ens :D

Tack Ekström :e :e :e :p :P :b

Medlem sedan feb. 20012 412 inlägg
#10

De som inte blir ifyllda, har de ett värde i databasen?

Isåfall hade jag låtit fälten varit förifyllda med värden från databasen när formuläret laddas. Och är de tomma i databasen hade jag skickat in 'null' i SQL-frågan.

mvh Jörgen HP

Medlem sedan feb. 20022 594 inlägg
#11

CatZ skrev:

Tack Ekström :e :e :e :p :P :b

Hehe, skönt att kunna hjälpa till nån gång :D

Medlem sedan jan. 20022 440 inlägg
#12

:) Jörgen :) Såhär ser formuläret ut

<input name="Leda" type="checkbox" value="Ledamot"<%If rs("Leda") = "Ledamot" Then%> Checked<%End If%>>

Så det hade jag redan tänkt på, annars vore ju en UPDATE meningslös ;)

Medlem sedan feb. 20012 412 inlägg
#13

Okey, då så löste det sig. Läste lite dåligt, fick för mig att det var en insert, så jag redigerade lite i svaret ovan. :)

Medlem sedan feb. 20022 594 inlägg
#14

Skriv såhär istället: (Kanske lite OT, men, men)<% If rs("Leda") = "Ledamot" Then Response.Write "Checked %>

Medlem sedan jan. 20022 440 inlägg
#15

Ekström skrev:

Skriv såhär istället: (Kanske lite OT, men, men)<% If rs("Leda") = "Ledamot" Then Response.Write "Checked %>

Du har absolut rätt i det ;)

Medlem sedan feb. 20022 594 inlägg
#16

Tackar.

Är väl inte direkt något fel med din kod, men jag tycker det blir snyggast om man gör som jag skrev bara :e

Medlem sedan jan. 20022 440 inlägg
#17

Ja oxo slipper man avsluta med <%END IF%>

Medlem sedan dec. 200012 464 inlägg
#18

Varför har du med select @@identity efter update? Det är bara relevant efter insert.

Medlem sedan jan. 20022 440 inlägg
#19

hoppsan, LarsG den åkte nog med av misstag när jag kopierade INSERT saken :)

257 ms totalt · 4 externa anrop · v20260731065814-full.1dc6f849
122 ms — deklarationer (db)
0 ms — hämta statistik (cache)
132 ms — hämta tråd, inlägg och bilagor (db)
122 ms — ändringar (db)