05. april 2002 - 21:01
Der er
23 kommentarer og 3 løsninger
Skriv til database
Er der nogen der kan hjælpe mig med at klargøre, hvad det er for en fejl jeg overser i dette...? Fejlmeddelelse: Error Type: Microsoft JET Database Engine (0x80040E14) Syntax error in INSERT INTO statement. /tr/modtag.asp, line 24 Og her er scriptet: <% dim cn, cnstr Set Cn = Server.CreateObject("ADODB.Connection") cnstr = "provider=microsoft.jet.OLEDB.4.0;" cnstr = cnstr & "Data Source=C:\inetpub\wwwroot\tr\database.mdb;" Dim navn navn = Request.Form("brugernavn") cn.connectionstring = cnstr cn.open dim sql sql = "insert into database(navn)" cn.execute sql cn.close set cn = nothing %>
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.
Slettet bruger
05. april 2002 - 21:09
#1
Du laver en INSERT-sætning, men fortæller ikke hvilke data der skal i. Det skal nok nærmere være noget i retning af: INSERT INTO database (navn) VALUES('" & navn & "')"
05. april 2002 - 21:10
#2
Hva.. ka du ik lige skrive scriptet som det er så man kan løse problemet?
05. april 2002 - 21:10
#3
du mangler at indsætte noget i databasen - altså mangler at sætte en value... fx; sql = "insert into database(navn) values ('" & din_variavel & "')"
Slettet bruger
05. april 2002 - 21:12
#4
Hovsa: sql = "INSERT INTO database (navn) VALUES('" & navn & "')"´ :)
05. april 2002 - 21:13
#5
Insert into tabel (kol, kol2, kol3) VALUES ('" + str1 + "', '" + str2 + "', '" + str3 + "')
05. april 2002 - 21:14
#6
fx: strsql = "Insert into tabel (kol, kol2, kol3) VALUES ('" + str1 + "', '" + str2 + "', '" + str3 + "')" set rs = conn.execute(strsql) Det virker!! /AMD
05. april 2002 - 21:26
#7
Nu ser den således ud...Men meddeler at der er en fejl i linie 24??? <html> <head> <title>ASP</title> </head> <body> <% dim cn, cnstr Set Cn = Server.CreateObject("ADODB.Connection") cnstr = "provider=microsoft.jet.OLEDB.4.0;" cnstr = cnstr & "Data Source=C:\inetpub\wwwroot\tr\database.mdb;" Dim navn navn = Request.Form("brugernavn") cn.connectionstring = cnstr cn.open dim sql sql = "INSERT INTO database (database) VALUES('" & navn & "')" cn.execute sql cn.close set cn = nothing %> Brugernavnet <% response.write navn %> er overført til logfilen </body> </html>
05. april 2002 - 21:27
#8
rettelse...: <% dim cn, cnstr Set Cn = Server.CreateObject("ADODB.Connection") cnstr = "provider=microsoft.jet.OLEDB.4.0;" cnstr = cnstr & "Data Source=C:\inetpub\wwwroot\tr\database.mdb;" Dim navn navn = Request.Form("brugernavn") cn.connectionstring = cnstr cn.open dim sql sql = "INSERT INTO database (navn) VALUES('" & navn & "')" cn.execute sql cn.close set cn = nothing %> Brugernavnet <% response.write navn %> er overført til logfilen </body> </html>
05. april 2002 - 21:27
#9
Databasen hedder "database" og kolonnen hedder "navn"
Slettet bruger
05. april 2002 - 21:28
#10
Hvad hedder din tabel? sql = "INSERT INTO tabelnavn (navn) VALUES('" & navn & "')"
05. april 2002 - 21:28
#11
Første kolonne er sat til autonummerering...Gør det nogen foreskel?
05. april 2002 - 21:30
#12
og tabellen hedder også database
Slettet bruger
05. april 2002 - 21:30
#13
Du skal ikke INSERT INTO DATABASE det er din tabel navn du skal INSERT INTO. Det er det der er problemet.
Slettet bruger
05. april 2002 - 21:31
#14
Nej, det gør ingen forskel. Hvilken fejl får du?
05. april 2002 - 21:31
#15
Mit tabel navn er "database"
05. april 2002 - 21:32
#16
Error Type: Microsoft JET Database Engine (0x80040E14) Syntax error in INSERT INTO statement. /tr/modtag.asp, line 26
Slettet bruger
05. april 2002 - 21:43
#17
Hmm... Har du andre felter i din tabel?
05. april 2002 - 21:44
#18
ja 1. felt hedder "ID"...med autonummerering
05. april 2002 - 21:47
#19
hvilken felttype er "navn"?
05. april 2002 - 21:49
#20
tekst?? hvis det er det du mener
05. april 2002 - 21:55
#21
Prøv mæ den gode gamle: Set Conn = Server.CreateObject("ADODB.Connection") DSN = "DRIVER={Microsoft Access Driver (*.mdb)}; " DSN = DSN & "DBQ=" & Server.MapPath ("database.mdb") Conn.Open DSN strnavn = request.form("brugernavn") conn.execute(strsql) conn.close set conn = nothing Det bør virke!!!
05. april 2002 - 21:56
#22
O.B.S kom åbenbart til at slette sql streng prøver igen......
05. april 2002 - 21:57
#23
Jeg har selv fundet ud af det..."database" er et reserveret ord i sql og skulle derfor sættes i firkantede paranteser... Men anyway...Tark for hjælpen :-)
05. april 2002 - 21:58
#24
Set Conn = Server.CreateObject("ADODB.Connection") DSN = "DRIVER={Microsoft Access Driver (*.mdb)}; " DSN = DSN & "DBQ=" & Server.MapPath ("database.mdb") Conn.Open DSN strnavn = request.form("brugernavn") strsql = "Insert into database (navn) VALUES ('" + strnavn + "')" conn.execute(strsql) conn.close set conn = nothing Jeg vil mene at det virker!!!
05. april 2002 - 22:01
#25
Måske skulle du først lave et par ændringer inden du gør livet mere besværligt end det er... Du har en database, der indeholder nogle tabeller, der indeholder nogle felter. Din database er hele "svineriet" og den kan du kalde database hvis du vil. Men din tabeller skal du give nogle fornuftige navne - f.eks. Kunder, Ordre, Spillere etc Dine feltnavne skal også være sigende og fornuftige Navn,Adr1,PostNr etc... I Access kan du bruge mellemrum i både tabel og feltnavne. Vedkommende der fik den ide burde skydes. Altså ingen mellemrum i dine navne. Lad være med at bruge SQL reserverede ord som tabel navne - det bliver lige pludselig et helvede... Du kan finde en liste på nettet søg efter MS ACCESS SQL RESERVED WORDS...
05. april 2002 - 22:21
#26
Oki :) Tak for rådet.. Mvh Casualty
Kurser inden for grundlæggende programmering