Article View: be.comp.programming
Article #5588Re: [ASP] Records toevoegen aan Access
From: billyke
Date: Tue, 06 May 2003 18:43
Date: Tue, 06 May 2003 18:43
97 lines
3726 bytes
3726 bytes
"_YuGo_" <yugo(geenspam)@pandora.be> wrote in message
news:fjBta.76321$t_2.7194@afrodite.telenet-ops.be...
> Ik probeer al een hele tijd een simpele guestbook te maken maar ik raak er
> maar niet uit. Ik krijg volgende fout:
>
> Microsoft OLE DB Provider for ODBC Drivers (0x80004005)
> [Microsoft][ODBC Microsoft Access-stuurprogramma] De bewerking moet worden
> uitgevoerd op een query die kan worden bijgewerkt.
>
> Deze fout wordt gegenereerd door de regel waar de insert opdracht wordt
> uitgevoerd, en ik zie helemaal geen syntax fout. Ik had eens geprobeerd
met
> Addnew, maar de ervaring verteld mij dat dat helemaal niet lukt.
>
> Ziet iemand het probleem?
>
> Hier is de code:
>
> <%
> Dim n,e,m
> n = Request.form("naam")
> e = Request.Form("email")
> m = Request.Form("Message")
> d = Date()
> %>
>
> <html>
> <body>
>
> naam: <% response.write(n)%>
> mail: <% response.write(e)%>
> mess: <% response.write(m)%>
> <% response.write(d)%>
>
>
> <%
> Set Conn = Server.CreateObject("ADODB.Connection")
> Conn.Open "DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=" & _
> Server.Mappath("Guestbook.mdb")
>
> Dim strSQL
>
>
> strSQL="INSERT INTO guestbook VALUES ('" & n & "', '" & e & "', '" & d &
"',
> '" & m & "');"
> response.write (strSQL)
>
> Conn.execute(strSQL)
>
> Response.Write "Wij hebben uw inschrijving goed ontvangen."
>
> objRecordset.Close
> Set objRecordset = Nothing
>
> Conn.close
>
> %>
>
>
>
1. Plak uw query eens rechtstreeks in Access en kijk of daar alles werkt
2. Check nogmaals of de IUSR full control heeft op de directory (moet
namelijk het .ldb bestand kunnen aanmaken en verwijderen en wijzigen in de
db).
3. Probeer eens met Conn.Mode = 3 'adModeReadWrite (dit voor het openen van
de connectie)
Nog twee opmerkingen:
1. Het is niet zo verstandig om de databank binnen het bereik van IIS te
zetten, op deze manier kan iedereen gewoon de databank downloaden...
Je gebruikt beter een UDL bestand dat je buiten het bereik van IIS zet
(bijvoorbeeld C:\Guestbook.udl).
De connectiestring wordt dan "file name=C:\Guestbook.udl" (dus Conn.Open
"file name=C:\Guestbook.udl")
2. Wat indien bijvoorbeeld Peter 't Paard zou noemen, dan krijg je
gegarandeerd fouten omdat je SQL op dat moment ongeldig is.
Je kan dit oplossen door de single quotes te ontdubbelen
Function CleanSQL(sValue)
CleanSQL = Replace(sValue, "'", "''")
End Function
Jouw SQL ziet er dan uit als volgt:
strSQL="INSERT INTO guestbook VALUES ('" & CleanSQL(n) & "', '" &
CleanSQL(e) & "', '" & CleanSQL(d) & "', '" & CleanSQL(m) & "');"
Nog veel succes met de website!
Technical Details
Message-ID:
<b98vrc$1b6$1@reader11.wxs.nl>Path:
arc1-ca.pugleaf.net!archiver1.google.com!news1.google.com!sn-xit-02!sn-xit-03!sn-xit-01!sn-xit-08!supernews.com!news.tele.dk!news.tele.dk!small.news.tele.dk!newsfeed.multikabel.nl!newsfeed.wxs.nl!textnews.wxs.nl!not-for-mailReferences:
<fjBta.76321$t_2.7194@afrodite.telenet-ops.be>Show Full Headers
Complete Article Headers
X-Google-Language: DUTCH,ASCII-7-bit X-Google-Thread: fcea4,1d01981ca425e83d X-Google-Attributes: gidfcea4,public X-Google-ArrivalTime: 2003-05-06 11:44:11 PST Path: arc1-ca.pugleaf.net!archiver1.google.com!news1.google.com!sn-xit-02!sn-xit-03!sn-xit-01!sn-xit-08!supernews.com!news.tele.dk!news.tele.dk!small.news.tele.dk!newsfeed.multikabel.nl!newsfeed.wxs.nl!textnews.wxs.nl!not-for-mail From: "billyke" <gert.verstappen@gmx.net> Newsgroups: be.comp.programming Subject: Re: [ASP] Records toevoegen aan Access Date: Tue, 6 May 2003 20:43:50 +0200 Organization: Planet Internet Lines: 99 Message-ID: <b98vrc$1b6$1@reader11.wxs.nl> References: <fjBta.76321$t_2.7194@afrodite.telenet-ops.be> NNTP-Posting-Host: 81.11.142.91 X-Trace: reader11.wxs.nl 1052246700 1382 81.11.142.91 (6 May 2003 18:45:00 GMT) X-Complaints-To: abuse@planet.nl NNTP-Posting-Date: 6 May 2003 18:45:00 GMT X-Priority: 3 X-MSMail-Priority: Normal X-Newsreader: Microsoft Outlook Express 6.00.2800.1158 X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.1165