/ Forside / Teknologi / Udvikling / ASP / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
ASP
#NavnPoint
smorch 9259
Harlekin 1866
molokyle 1040
Steffanst.. 758
gandalf 657
smilly 564
gibson 560
cumano 530
MouseKeep.. 480
10  Random 410
Syntax error in UPDATE statement
Fra : Mr_Smith


Dato : 26-09-02 09:21

Jeg får flg. fejl i forb. med en opgave, hvor kundedata skal kunne
ændres:

Error Type:
Microsoft JET Database Engine (0x80040E14)
Syntax error in UPDATE statement.
/cykelhuset/aendr_kunde_execute.asp, line 33

POST Data:
kundenr=14&navn=Ronnie+Coleman&adresse=Havnegade+54&postnr=6700&telefonnr=12
345678&email=ronnie@ronniecoleman.com&submit=Opdat%E9r+data


Min update statement ser således ud:

strSQL = "UPDATE Kunde SET "
strSQL = strSQL & "Navn = '" & strNavn & "',"
strSQL = strSQL & "Adresse = '" & strAdresse & "',"
strSQL = strSQL & "Postnr = " & intPostnr & ","
strSQL = strSQL & "Telefonnr = " & intTelefonnr & ","
strSQL = strSQL & "E-mail = '" & strEmail & "',"
strSQL = strSQL & "WHERE Kundenr = " & intKundenr & ";"

Set objRS = objConn.Execute(strSQL)

Kan I se noget forkert i sql-sætningen?

// smith





 
 
Mads Kristensen (26-09-2002)
Kommentar
Fra : Mads Kristensen


Dato : 26-09-02 09:26

> Min update statement ser således ud:
>
> strSQL = "UPDATE Kunde SET "
> strSQL = strSQL & "Navn = '" & strNavn & "',"
> strSQL = strSQL & "Adresse = '" & strAdresse & "',"
> strSQL = strSQL & "Postnr = " & intPostnr & ","
> strSQL = strSQL & "Telefonnr = " & intTelefonnr & ","
> strSQL = strSQL & "E-mail = '" & strEmail & "',"
> strSQL = strSQL & "WHERE Kundenr = " & intKundenr & ";"
>
> Kan I se noget forkert i sql-sætningen?
>

Prøv at erstat det sidste "," med et " " inden "WHERE"

// Mads



Mr_Smith (26-09-2002)
Kommentar
Fra : Mr_Smith


Dato : 26-09-02 09:59

"Mads Kristensen" <someone@hotmail.com> wrote
> Prøv at erstat det sidste "," med et " " inden "WHERE"

Tak Mads, det hjalp - men jeg skulle også lige ændre på mit E-mail felt.
Feltet skal stå inden i [], da det er reserveret til sql eller asp - eller
sådan noget! =)

Nu ser mit UPDATE statement således ud:

strSQL = "UPDATE Kunde SET "
strSQL = strSQL & "Navn = '" & strNavn & "',"
strSQL = strSQL & "Adresse = '" & strAdresse & "',"
strSQL = strSQL & "Postnr = " & intPostnr & ","
strSQL = strSQL & "Telefonnr = " & intTelefonnr & ","
strSQL = strSQL & "[E-mail] = '" & strEmail & "'"
strSQL = strSQL & " WHERE Kundenr = " & intKundenr & ";"


...og det virker! =)


// smith



Jens Gyldenkærne Cla~ (26-09-2002)
Kommentar
Fra : Jens Gyldenkærne Cla~


Dato : 26-09-02 10:29

Mr_Smith skrev:

> Tak Mads, det hjalp - men jeg skulle også lige ændre på mit
> E-mail felt. Feltet skal stå inden i [], da det er reserveret
> til sql eller asp - eller sådan noget! =)

Problemet med feltnavnet E-mail er bindestregen som i SQL fortolkes
som "minus". Du kunne fx have en SQL-sætning der hed:

SELECT prisTotal-Rabat FROM prisListe

Dvs. træk værdien af feltet Rabat fra feltet prisTotal. Som med
reserverede ord kan man omgå fortolkningen ved at benytte klammerne
[] om feltnavnet.

PS: Til en anden gang så er det meget lettere at finde fejl i din
SQL-sætning hvis du skriver den ud i sin helhed. Det vil sige at i
stedet for at skrive:

strSQL = "UPDATE....."
strSQL = strSQL & "...."
etc.

så sætter du linjen

Response.write(strSQL) ind på din asp-side, efter at du har
opbygget hele strSQL.

--
Jens Gyldenkærne Clausen
Svar venligst under det du citerer, og citer kun det der er
nødvendigt for at forstå dit svar i sammenhængen. Se hvorfor og
hvordan på http://usenet.dk/netikette/citatteknik.html

Søg
Reklame
Statistik
Spørgsmål : 177559
Tips : 31968
Nyheder : 719565
Indlæg : 6408937
Brugere : 218888

Månedens bedste
Årets bedste
Sidste års bedste