28. december 2010 - 20:21
Der er
14 kommentarer og 1 løsning
Kan ikke indsætte data i access db.
Hej jeg sidder og roder med noget ASP kode og fatter intet af hvorfor denne scriptdel ikke virker, det burde den da? prefixSQL = "Insert into personer (brugernavn, password, fornavn, efternavn, adresse, postnr, by, tlf, email, level, titel, notater, tid, dato)" suffixSQL = "values ('" & request.form("brugernavn") & "','" & request.form("password") & "','" & request.form("fornavn") & "','" & request.form("efternavn") & "','" & request.form("adresse") & "','" & request.form("postnr") & "','" & request.form("by") & "','" & request.form("tlf") & "','" & request.form("email") & "','" & request.form("level") & "','" & request.form("titel") & "','" & request.form("notater") & "','" & request.form("tid") & "','" & request.form("dato") & "')" SQL = prefixSQL & suffixSQL Conn.Execute(SQL) Conn.Close Set Conn = Nothing //curentus
Annonceindlæg fra GlobalConnect
28. december 2010 - 20:32
#1
Kunne du evt. prøve at printe din SQL inden du executer den ? Måske du mangler nogle data ? Eller også er BY reserved word i access?
28. december 2010 - 20:32
#2
28. december 2010 - 20:47
#3
Har prøvet udskrive sql men det ser fint ud. Godt bud på ordet 'by' så har ændre det til 'bynavn' uden resultat. Det er ligesom om der går noget galt i selve access tabellen! For når jeg prøver at ændre, så den indsætter dele af values i en anden tabel virker det fint. Det Er Lige Godt Grov' //curentus
28. december 2010 - 20:50
#4
Hvordan ser din kode ud nu ? Og har du rettet felt navnet fra by til bynavn ?
28. december 2010 - 20:55
#5
Ja har ændret både i databasen og i POST filen og min opret fil. Du får lige min POST fil: <fieldset style="width: 400; height: 100"> <legend><font size="4"><b>Opret Bruger <img border="0" src="img/bruger.gif" width="10" height="19"> </b></font></legend> <form method="POST" action="opret.asp?system=opretbruger"> <div align="center"> <table border="0" width="350" cellspacing="0" cellpadding="0"> <tr> <td> <table border="0" width="350" cellspacing="0" cellpadding="0"> <tr> <td width="100"><font size="2">Brugernavn</font></td> <td width="20"><font size="2">:</font></td> <td width="220"><font size="2"> <input type="text" name="brugernavn" size="29"> </font></td> <td width="10"><font size="2"> </font></td> </tr> <tr> <td width="100"><font size="2"> </font></td> <td width="20"><font size="2"> </font></td> <td width="220"><font size="2"> </font></td> <td width="10"><font size="2"> </font></td> </tr> <tr> <td width="100"><font size="2">Password</font></td> <td width="20"><font size="2">:</font></td> <td width="220"><font size="2"> <input type="text" name="password" size="29"> </font></td> <td width="10"><font size="2"> </font></td> </tr> <tr> <td width="100"><font size="2"> </font></td> <td width="20"><font size="2"> </font></td> <td width="220"><font size="2"> </font></td> <td width="10"><font size="2"> </font></td> </tr> <tr> <td width="100"><font size="2">Fornavn</font></td> <td width="20"><font size="2">:</font></td> <td width="220"><font size="2"> <input type="text" name="fornavn" size="29"> </font></td> <td width="10"><font size="2"> </font></td> </tr> <tr> <td width="100"><font size="2"> </font></td> <td width="20"><font size="2"> </font></td> <td width="220"><font size="2"> </font></td> <td width="10"><font size="2"> </font></td> </tr> <tr> <td width="100"><font size="2">Efternavn</font></td> <td width="20"><font size="2">:</font></td> <td width="220"><font size="2"> <input type="text" name="efternavn" size="29"> </font></td> <td width="10"><font size="2"> </font></td> </tr> <tr> <td width="100"><font size="2"> </font></td> <td width="20"><font size="2"> </font></td> <td width="220"><font size="2"> </font></td> <td width="10"><font size="2"> </font></td> </tr> <tr> <td width="100"><font size="2">Adresse</font></td> <td width="20"><font size="2">:</font></td> <td width="220"><font size="2"> <input type="text" name="adresse" size="29"> </font></td> <td width="10"><font size="2"> </font></td> </tr> <tr> <td width="100"><font size="2"> </font></td> <td width="20"><font size="2"> </font></td> <td width="220"><font size="2"> </font></td> <td width="10"><font size="2"> </font></td> </tr> <tr> <td width="100"><font size="2">Postnr.</font></td> <td width="20"><font size="2">:</font></td> <td width="220"><font size="2"> <input type="text" name="postnr" size="3"> </font></td> <td width="10"><font size="2"> </font></td> </tr> <tr> <td width="100"><font size="2"> </font></td> <td width="20"><font size="2"> </font></td> <td width="220"><font size="2"> </font></td> <td width="10"><font size="2"> </font></td> </tr> <tr> <td width="100"><font size="2">By</font></td> <td width="20"><font size="2">:</font></td> <td width="220"><font size="2"> <input type="text" name="bynavn" size="29"> </font></td> <td width="10"><font size="2"> </font></td> </tr> <tr> <td width="100"><font size="2"> </font></td> <td width="20"><font size="2"> </font></td> <td width="220"><font size="2"> </font></td> <td width="10"><font size="2"> </font></td> </tr> <tr> <td width="100"><font size="2">Tlf</font></td> <td width="20"><font size="2">:</font></td> <td width="220"><font size="2"> <input type="text" name="tlf" size="29"> </font></td> <td width="10"><font size="2"> </font></td> </tr> <tr> <td width="100"><font size="2"> </font></td> <td width="20"><font size="2"> </font></td> <td width="220"><font size="2"> </font></td> <td width="10"><font size="2"> </font></td> </tr> <tr> <td width="100"><font size="2">E-mail</font></td> <td width="20"><font size="2">:</font></td> <td width="220"><font size="2"> <input type="text" name="email" size="29"> </font></td> <td width="10"><font size="2"> </font></td> </tr> <tr> <td width="100"><font size="2"> </font></td> <td width="20"><font size="2"> </font></td> <td width="220"><font size="2"> </font></td> <td width="10"><font size="2"> </font></td> </tr> <tr> <td width="100"><font size="2">Brugerlevel</font></td> <td width="20"><font size="2">:</font></td> <td width="220"><select size="1" name="level"> <option value="100">Kunde</option> <option value="200">Ansat</option> <option value="500">Admin</option> </select><font size="2"> </font></td> <td width="10"><font size="2"> </font></td> </tr> <tr> <td width="100"><font size="2"> </font></td> <td width="20"><font size="2"> </font></td> <td width="220"><font size="2"> </font></td> <td width="10"><font size="2"> </font></td> </tr> <tr> <td width="100"><font size="2">Titel:</font></td> <td width="20"><font size="2">:</font></td> <td width="220"><select size="1" name="titel"> <option value="0" selected>Ikke Ansat</option> <option value="1">Administrator</option> <option value="2">Webmaster</option> <option value="3">Assistent</option> <option value="4">Praktikant</option> <option value="5">Lærling</option> <option value="6">Elektriker</option> <option value="7">Sekretær</option> <option value="8">Overmontør</option> <option value="9">Mester</option> </select><font size="2"> </font></td> <td width="10"><font size="2"> </font></td> </tr> </table> <p><br> </font><br> <input type="submit" value="Opret Bruger" name="B1"><br> <input type="hidden" name="notater" value="0"> <input type="hidden" name="tid" value="<%=FormatDateTime(Now, vbShortTime)%>"> <input type="hidden" name="dato" value="<%=Day(Date) & "/" & Month(Date) & " - " & Year(Date)%>"></td> </tr> </table> </div> </form> <p> </p> </fieldset>
28. december 2010 - 20:58
#6
Min opretfil (den er bygget sammen med flere opret scripts vha. if sætning): ElseIf Request.Querystring("system") = "opretbruger" Then prefixSQL = "Insert into personer (brugernavn, password, fornavn, efternavn, adresse, postnr, bynavn, tlf, email, level, titel, notater, tid, dato)" suffixSQL = "values ('" & request.form("brugernavn") & "','" & request.form("password") & "','" & request.form("fornavn") & "','" & request.form("efternavn") & "','" & request.form("adresse") & "','" & request.form("postnr") & "','" & request.form("bynavn") & "','" & request.form("tlf") & "','" & request.form("email") & "','" & request.form("level") & "','" & request.form("titel") & "','" & request.form("notater") & "','" & request.form("tid") & "','" & request.form("dato") & "')" SQL = prefixSQL & suffixSQL Response.Write (SQL) Conn.Close Set Conn = Nothing
28. december 2010 - 21:00
#7
Hvad udskriver din: Response.Write (SQL) Og hvad hvis du tager den sql og smider direkte ind i access ?
28. december 2010 - 21:05
#8
SQL'en udskriver følgende: Insert into personer (brugernavn, password, fornavn, efternavn, adresse, postnr, bynavn, tlf, email, level, titel, notater, tid, dato)values ('bruger','pass','for','efter','adres','post','byen','telefon','email','200','9','0','19:50','28/12 - 2010') Mener du hvis jeg taster det manuelt i db'en?
28. december 2010 - 21:07
#9
Eller conn.execute(SQL)
28. december 2010 - 21:08
#10
conn.execute(SQL) giver mig fejl 500.
28. december 2010 - 21:12
#11
Hvad sker der, hvis du skyder denne sql af direkte i access? Insert into personer (brugernavn, password, fornavn, efternavn, adresse, postnr, bynavn, tlf, email, level, titel, notater, tid, dato)values ('bruger','pass','for','efter','adres','post','byen','telefon','email','200','9','0','19:50','28/12 - 2010')
28. december 2010 - 21:22
#12
Der er noget helt galt med min db, har lige prøvet at indtaste oplysningerne manuelt. Og nu kan jeg slet ikke hente data fra tabellen personer, men det er tilsyneladende kun den tabel det er galt med. Skal lige prøve at lave en helt ny db.
29. december 2010 - 00:48
#13
Hvad er formterne af felterne i din database? Datoen du indsætter ser ikke helt standard ud, så hvis det er et datofelt, kan det være noget af årsagen.
En anden ting du kan prøve er at sætte call foran kommendoen med execute (eller undlade at sætte SQL i parantes):
call conn.execute(sql)
Det kan også være du mangler at indsætte et mellemrum før values i din sql-sætning. Det er godt nok et lidt usikkert bud, da sætningen rent syntaktisk burde kunne tolkes alligevel i og med feltlisten lige er afsluttet inden values-nøgleordet...
30. december 2010 - 13:49
#14
Lukker... Scriptet fejlede ikke noget af en eller anden årsag var det en fejl i db. Virkede da jeg lavede en helt ny db.
30. december 2010 - 17:12
#15
Jamen selv tak for hjælpen og behold du bare pointene selv.
Kurser inden for grundlæggende programmering