Avatar billede nidyahou Praktikant
15. oktober 2005 - 13:19 Der er 9 kommentarer og
1 løsning

Fej i kode nemt

Hvorfor udløser denne kode:

strSQL = "Update Users set "
strSQL = strSQL & "[Real Name]= '" & strRn & "', "
strSQL = strSQL & "[Password]= '" & strPsw & "', "
strSQL = strSQL & "[Country]= '" & strCountry & "', "
strSQL = strSQL & "[Age]= " & strAge & ", "
strSQL = strSQL & "[Email]= '" & strEmail & "', "
strSQL = strSQL & "[Profile]= '" & strProfile & "', "
strSQL = strSQL & "[Sex]= '" & strSex & "' "
strSQL = strSQL & "Where [Nickname] = '" & Session.Contents("user")  & "'"

denne fejl:

Microsoft OLE DB Provider for ODBC Drivers (0x80040E14)
[Microsoft][ODBC Microsoft Access Driver] Syntax error in UPDATE statement.
Avatar billede kalp Novice
15. oktober 2005 - 13:20 #1
strSQL = "Update Users set "
strSQL = strSQL & "[Real Name]= '" & strRn & "', "
strSQL = strSQL & "[Password]= '" & strPsw & "', "
strSQL = strSQL & "[Country]= '" & strCountry & "', "
strSQL = strSQL & "[Age]= " & strAge & ", "
strSQL = strSQL & "[Email]= '" & strEmail & "', "
strSQL = strSQL & "[Profile]= '" & strProfile & "', "
strSQL = strSQL & "[Sex]= '" & strSex & "', "
strSQL = strSQL & "Where [Nickname] = '" & Session.Contents("user")  & "'"
Avatar billede softspot Forsker
15. oktober 2005 - 13:24 #2
Er du sikker på at strAge indeholder noget?
Avatar billede erikjacobsen Ekspert
15. oktober 2005 - 13:24 #3
Der skal ikke være komma før WHERE. Står der noget i strAge? Hvordan ser SQL-sætningen ud, hvis du skriver den ud?
Avatar billede softspot Forsker
15. oktober 2005 - 13:24 #4
...og der skal i hvert tilfælde IKKE komma efter det sidste felt ([Sex])!
Avatar billede nidyahou Praktikant
15. oktober 2005 - 13:25 #5
Update Users set [Real Name]= '', [Password]= 'jakob2', [Country]= 'Denmark', [Age]= , [Email]= 'True', [Profile]= '', [Sex]= 'Male' Where [Nickname] = 'Arez' The user informations have been succesfully modified

Men kan en talværdi ikke også godt bare være null i databasen?
Avatar billede softspot Forsker
15. oktober 2005 - 13:27 #6
Jo, men så skal du lade være med at opdatere den eller eksplicit sætte den til Null - du kan ikke bare undlade at specificere værdien...
Avatar billede nidyahou Praktikant
15. oktober 2005 - 13:27 #7
det der "The user informations have been succesfully modified er bare en kommentar, ikke SQL string
Avatar billede nidyahou Praktikant
15. oktober 2005 - 13:28 #8
så reder jeg med:
if strAge <> "" then
strSQL = strSQL & "[Age]= " & strAge & ", "
end if
drop svar
Avatar billede softspot Forsker
15. oktober 2005 - 13:30 #9
Ja, det er en OK måde at gøre det på :)
Avatar billede softspot Forsker
15. oktober 2005 - 13:57 #10
Tak for point :)
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester