Avatar billede everclear Praktikant
11. november 2004 - 14:45 Der er 7 kommentarer og
1 løsning

Problemer med INSERT i Access

Jeg sidder og er ved at lave en access database, men får en fejl når jeg kører koden:

Set Conn = Server.CreateObject("ADODB.Connection")
DSN = "DRIVER={Microsoft Access Driver (*.mdb)}; "
DSN = DSN & "DBQ=" & Server.MapPath ("../../test.mdb")

Conn.Open DSN    ------> linie 30


strSQL = "INSERT INTO brugtebilerpic(Navn) VALUES ('" & filename & "') WHERE ID = " & Request.QueryString("id")

Conn.Execute(strSQL)

Fejlen:

Fejltype:
Microsoft OLE DB Provider for ODBC Drivers (0x80040E14)
[Microsoft][ODBC Microsoft Access-driver] Der mangler et semikolon (;) i slutningen af SQL-sætningen.
outputfile.asp, line 30

Synes ikke helt jeg kan finde problemet...
Avatar billede everclear Praktikant
11. november 2004 - 14:46 #1
Sorry.......det er conn.execute(strSQL) der er linie 30:-)
11. november 2004 - 14:50 #2
Der er noget generelt forkert i din SQL sætning.

Du vil bare oprette én post med ét felt. Derfor giver din Where-clause ingen mening. Sætningen burde bare se således ud:

strSQL = "INSERT INTO brugtebilerpic (Navn) VALUES ('" & filename & "');"

Men der har selvfølgelig været en grund til, at du har WHERE ID = " & Request.QueryString("id") med.

Hvilken værdi indeholder filename? Og hvad er din tanke med Request.QueryString("id")?
Avatar billede everclear Praktikant
11. november 2004 - 14:53 #3
Jeg har fra en upload side videresendt et id til et produkt. Filename indeholder navnet på den uploadede fil.

Grunden til at jeg bruger Request.Querystring("id") er for at få det id jeg har videresendt fra forrige side.
11. november 2004 - 14:56 #4
men hvad bruges ID'et til i din SQL-sætning?

Det giver ingen mening at sætte en Where på.
Avatar billede everclear Praktikant
11. november 2004 - 15:01 #5
Jeg skal jo have knyttet filnavnet til det rigtige produkt i min database.....Dvs; hvis jeg har oprettet et produkt med id=4, så bliver dette sendt videre således at billedet kan få samme id som produktet.
11. november 2004 - 15:04 #6
ok, så ID'et skal med i tabellen?

I så fald, skal du indsætte 2 felter i stedet for kun Navn. Dvs nogenlunde således:

"INSERT INTO brugtebilerpic ( Navn, ID ) VALUES ('" & filename & "','" &  Request.QueryString("id") & "');"
Avatar billede everclear Praktikant
11. november 2004 - 15:11 #7
SUPER!
11. november 2004 - 15:12 #8
:o)

tal for point :o)
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
Dyk ned i databasernes verden på et af vores praksisnære Access-kurser

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