Avatar billede slapstick Nybegynder
11. oktober 2001 - 11:42 Der er 5 kommentarer og
1 løsning

Hvorfor får jeg syntax error her????

er der nogen der kan fortælle mig hvad der er galt her? jeg får en \'SYNTAX ERROR in INSERT INTO statement\'
her er koden:

<%
Set Connn = Server.CreateObject(\"ADODB.Connection\")
Conn.Open \"DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=E:\\Inetpub\\db\\kanal1\\register.mdb\"
SQL = \"INSERT INTO Users (Username,Password,level,navn,tlfnr,email) VALUES (\'\" & Request.form(\"Username\") & \"\',\'\" & Request.form(\"Password\") & \"\',\'\" & Request.form(\"level\") & \"\',\'\" & Request.form(\"navn\") & \"\',\'\" & Request.form(\"tlfnr\") & \"\',\'\" & Request.form(\"email\") & \"\')\"
Conn.Execute(SQL)
Conn.Close()
Set Connn = nothing
%>

og hvis jeg udskriver sql sætningen istedet for at udføre den så ser det rigtigt ud?
INSERT INTO Users (Username,Password,level,navn,tlfnr,email) Values (\'test\', \'test\', \'2\', \'test hansen\', \'31234323\', \'test@test.dk\')



Avatar billede keysersoze Ekspert
11. oktober 2001 - 11:48 #1
er alle felter tekst/notat felter?

Avatar billede bobbedude Nybegynder
11. oktober 2001 - 11:49 #2
Jeg har haft samme fejl og havde glemt en \' et sted min ser sådan ud :

SQL = \"INSERT INTO navne (Navn, Adresse, Email, Telefonnummer, Alder, Valg, Ip ,Dato) VALUES (\'\" & Request.Form(\"navn\") & \"\',\'\" & Request.Form(\"adresse\")& \"\',\'\" & Request.Form(\"email\") & \"\',\'\" & Request.Form(\"telefonnummer\") & \"\',\'\" & Request.Form(\"alder\") & \"\',\'\" & Request.Form(\"valg\") & \"\',\'\" & Request.Form(\"ip\") & \"\',\'\" & Request.Form(\"dato\") & \"\')\"
Set RS = Conn.Execute( SQL )
Avatar billede slapstick Nybegynder
11. oktober 2001 - 12:01 #3
keysersoze ja alle felter er notat felter undtagen id feltet der er autonummerering

bobbedude jeg har prøvet din sql sætning og det gav samme fejl :(

kan det være min base der er fucked?
Avatar billede pierrehusted Nybegynder
11. oktober 2001 - 12:42 #4
Er level også et notat felt ??    Hvis det er tal kan det være derfor den fejler (du har \'\' omkring).

Avatar billede eagleeye Praktikant
11. oktober 2001 - 12:48 #5
level er reserveret ord i Access. Så du skal enten omdøbe level til noget andet (levelstatus)
eller du skal i din(e) SQL sætninger sætte [] omking kolonne navnet [level].

så din SQL bliver hvis du sætter []:
SQL = \"INSERT INTO Users (Username,Password,[level],navn,tlfnr,email) VALUES (\'\" & Request.form(\"Username\") & \"\',\'\" & Request.form(\"Password\") & \"\',\'\" & Request.form(\"level\") & \"\',\'\" & Request.form(\"navn\") & \"\',\'\" & Request.form(\"tlfnr\") & \"\',\'\" & Request.form(\"email\") & \"\')\"

Jeg ville nok vælge at ændre kolonne navnet.
Conn.Execute(SQL)
Avatar billede slapstick Nybegynder
11. oktober 2001 - 13:29 #6
smukt eagle !!! det var lige det der var galt heheheheh :)
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