10. juni 2002 - 12:53
Der er
11 kommentarer og 1 løsning
Fejl i SQL
Hej Hej <% strSQL = "Insert into Brugere (Brugernavn) values('" & Request.Form("Brugernavn") & "')" strSQL = "Insert into Brugere (Fornavn) values('" & Request.Form("Fornavn") & "')" strSQL = "Insert into Brugere (Efternavn) values('" & Request.Form("Efternavn") & "')" strSQL = "Insert into Brugere (Password) values('" & Request.Form("Password") & "')" strSQL = "Insert into Brugere (Email) values('" & Request.Form("Email") & "')" strSQL = "Insert into Brugere (ICQ) values('" & Request.Form("ICQ") & "')" Conn.Execute(strSQL) strSQL = "Insert into brugere (Level, Aktiv) values('1','Ja')" Conn.Execute(strSQL) Conn.Close Set Conn = Nothing %> Hvad er galt? Den siger der er fejl i den anden SQL sætning. Mvh. Sigurd
Annonceindlæg tema
Cloud & AI
I dette særtema ser vi på, hvordan cloud og AI bliver fundamentet for virksomhedernes digitale forretning, og hvordan de nye muligheder for automatisering og forretningsværdi kan udnyttes uden at miste overblik, sikkerhed og menneskelig kontrol.
Hvis feltet aktiv er true/false, skal værdien af feltet i dit SQL statement være true/false eller -1/0 og ikke 'ja'/'nej' eller 'treu'/'false'
Slettet bruger
10. juni 2002 - 12:56
#2
Conn.Execute(strSQL) vil udelukkende kører den sidste SQL sætning du har der.... Hvad angår den anden linie kan jeg ikke se noget umiddelbart andet end hvis det ikke er noget i "Fornavn"
lacops >> sikke noget vrøvl. Der er 2 seperate executes og strSQL får en ny værdi imellem de 2.
Aktiv feltet er et tekst felt
Microsoft OLE DB Provider for ODBC Drivers error '80040e14' [Microsoft][ODBC Microsoft Access Driver] Syntax error in INSERT INTO statement.
Level er et reserveret ord i access, det skal derfor angives som [Level]
Tilmeld.asp <table><tr><td>Brugernavn:</td> <form action="tillykke.asp" method="post"> <td><input type="text" name="Brugernavn" id="knap"></td></tr><tr> <td>Password:</td> <td><input type="Password" name="Password" id="knap"></td></tr><tr> <td>Fornavn:</td> <td><input type="text" name="Fornavn" id="knap"></td></tr><tr> <td>Efternavn:</td> <td><input type="text" name="efternavn" id="knap"></td></tr><tr> <td>Email:</td> <td><input type="text" name="Email" id="knap"></td></tr><tr> <td>ICQ:</td> <td><input type="text" name="ICQ" id="knap"></td></tr><tr> <td> <input type="submit" value="Gem" id="knap"> </form></td></tr></table> Tilmeldt.asp strSQL = "Insert into Brugere (Brugernavn) values('" & Request.Form("Brugernavn") & "')" strSQL = "Insert into Brugere (Password) values('" & Request.Form("Password") & "')" strSQL = "Insert into Brugere (Fornavn) values('" & Request.Form("Fornavn") & "')" strSQL = "Insert into Brugere (Efternavn) values('" & Request.Form("Efternavn") & "')" strSQL = "Insert into Brugere (Email) values('" & Request.Form("Email") & "')" strSQL = "Insert into Brugere (ICQ) values('" & Request.Form("ICQ") & "')" Conn.Execute(strSQL) Men den vil kun tilføje ICQ - hvorfor?!?! Den vil godt tilføje level og aktiv!
Ahh, nu forstår jeg hvad lacops mente :-) Alle dine insert statements er enkelt statements og derfor udføres kun den med ICQ. Det skal i stedet være strSQL = "Insert into Brugere (Brugernavn, [Password], Fornavn, Efternavn, Email, ICQ)" strSQL = strSQL & " values('" & Request.Form("Brugernavn") & "', " strSQL = strSQL & "'" & Request.Form("Password") & "', " strSQL = strSQL & "'" & Request.Form("Fornavn") & "', " strSQL = strSQL & "'" & Request.Form("Efternavn") & "', " strSQL = strSQL & "'" & Request.Form("Email") & "', " strSQL = strSQL & "'" & Request.Form("ICQ") & "')"
tmceu > strSQL = "Insert into Brugere (Brugernavn, [Password], Fornavn, Efternavn, Email, ICQ)" strSQL = strSQL & " values('" & Request.Form("Brugernavn") & "', " strSQL = strSQL & "'" & Request.Form("Password") & "', " strSQL = strSQL & "'" & Request.Form("Fornavn") & "', " strSQL = strSQL & "'" & Request.Form("Efternavn") & "', " strSQL = strSQL & "'" & Request.Form("Email") & "', " strSQL = strSQL & "'" & Request.Form("ICQ") & "')" Conn.Execute(strSQL) strSQL = "Insert into brugere (FLevel, Aktiv) values('1','Ja')" Conn.Execute(strSQL) Opretter 2 nye rækker!
10. juni 2002 - 13:39
#10
Ja, for det har du bedt den om, da du laver 2 seperate INSERT statements. Hvis felterne FLevel og aktiv skal indsættes sammen med de øvrige, skal du blot have udvidet dit første statement. strSQL = "Insert into Brugere (Brugernavn, [Password], Fornavn, Efternavn, Email, ICQ, FLevel, Aktiv)" strSQL = strSQL & " values('" & Request.Form("Brugernavn") & "', " strSQL = strSQL & "'" & Request.Form("Password") & "', " strSQL = strSQL & "'" & Request.Form("Fornavn") & "', " strSQL = strSQL & "'" & Request.Form("Efternavn") & "', " strSQL = strSQL & "'" & Request.Form("Email") & "', " strSQL = strSQL & "'" & Request.Form("ICQ") & "', " strSQL = strSQL & "'" & "1" & "', " strSQL = strSQL & "'" & "ja" & "')"
10. juni 2002 - 13:47
#11
Tak for hjælpen
10. juni 2002 - 13:49
#12
Det var så lidt :-)
Kurser inden for grundlæggende programmering