|
| Fejl i INSERT INTO sætning Fra : Lasse Nyberg |
Dato : 21-12-02 15:51 |
|
Hej alle..
Nu har jeg bøvlet med disse linjer i lang tid.. så nu sætter jeg
min lid til jer..
Jeg har skrevet følgende linjer:
strSQL = "INSERT INTO Messages (" &_
"ForumID, InReplyTo, PostedBy, Email, Subject, Body, Date) " &_
"values('" & ForumID & "', '" & InReplyTo & "', '" & PostedBy &
"', '" & Email & "', '" & Subject & "', '" & Body & "', '" & Now
& "')"
Conn.Execute(strSQL)
Men jeg får denne fejlmedelse:
Microsoft OLE DB Provider for ODBC Drivers fejl '80040e14'
[Microsoft][ODBC Microsoft Access-driver] Der er en syntaksfejl i
INSERT INTO-sætningen.
/fff2002/login/forum/post.asp, linje 123
Linje 123 er Conn.Execute(strSQL) linjen
Alle poster indeholder data, vilket er kontrollert højre oppe på
siden..
Håber I kan hjælpe mig på ret kurs..
Eller må i alle have en god Jul
Med venlig hilsen
Nyberg
--
Vil du lære at kode HTML, XHTML, CSS, SSI eller ASP ???
- Pædagogiske tutorials på dansk
- Kom godt i gang med koderne
KLIK HER! => http://www.html.dk/tutorials
| |
Jonas Skafte Jensen (21-12-2002)
| Kommentar Fra : Jonas Skafte Jensen |
Dato : 21-12-02 16:06 |
|
Prøv at skrive
response.write strSQL
response.end
lige inden din Conn.Execute (linie123)
Det er tit indlysende når man først for set hvad det er den sender til
basen.
"Lasse Nyberg" <lassenyberg@mail.dk> skrev i en meddelelse
news:au1v42$2gf$1@sunsite.dk...
> Hej alle..
> Nu har jeg bøvlet med disse linjer i lang tid.. så nu sætter jeg
> min lid til jer..
>
> Jeg har skrevet følgende linjer:
> strSQL = "INSERT INTO Messages (" &_
>
> "ForumID, InReplyTo, PostedBy, Email, Subject, Body, Date) " &_
>
> "values('" & ForumID & "', '" & InReplyTo & "', '" & PostedBy &
> "', '" & Email & "', '" & Subject & "', '" & Body & "', '" & Now
> & "')"
>
> Conn.Execute(strSQL)
>
> Men jeg får denne fejlmedelse:
>
> Microsoft OLE DB Provider for ODBC Drivers fejl '80040e14'
> [Microsoft][ODBC Microsoft Access-driver] Der er en syntaksfejl i
> INSERT INTO-sætningen.
> /fff2002/login/forum/post.asp, linje 123
>
> Linje 123 er Conn.Execute(strSQL) linjen
>
> Alle poster indeholder data, vilket er kontrollert højre oppe på
> siden..
>
> Håber I kan hjælpe mig på ret kurs..
>
> Eller må i alle have en god Jul
>
> Med venlig hilsen
>
> Nyberg
>
> --
> Vil du lære at kode HTML, XHTML, CSS, SSI eller ASP ???
> - Pædagogiske tutorials på dansk
> - Kom godt i gang med koderne
> KLIK HER! => http://www.html.dk/tutorials
| |
Lasse Nyberg (21-12-2002)
| Kommentar Fra : Lasse Nyberg |
Dato : 21-12-02 17:05 |
|
> response.write strSQL
> response.end
> lige inden din Conn.Execute (linie123)
> Det er tit indlysende når man først for set hvad det er den sender til
> basen.
Det har jeg så lige prøvet.. den skriver flot følgende:
INSERT INTO Messages (ForumID, InReplyTo, PostedBy, Email, Subject, Body,
Date) values('6', '0', 'Lasse Nyberg', 'lassenyberg@mail.tele.dk',
'Overskrift', 'Brødtekst', '21-12-2002 17:01:18')
Jeg kan ikke se nogle fejl i det ovenstående.. Men Fjerner jeg de to
linjer igen får jeg samme fejl.
> > Microsoft OLE DB Provider for ODBC Drivers fejl '80040e14'
> > [Microsoft][ODBC Microsoft Access-driver] Der er en syntaksfejl i
> > INSERT INTO-sætningen.
> > /fff2002/login/forum/post.asp, linje 123
> >
> > Linje 123 er Conn.Execute(strSQL) linjen
Hvad kan jeg have gjot forkert..
Mvh
Lasse Nyberg
--
Vil du lære at kode HTML, XHTML, CSS, SSI eller ASP ???
- Pædagogiske tutorials på dansk
- Kom godt i gang med koderne
KLIK HER! => http://www.html.dk/tutorials
| |
Jonas Skafte Jensen (21-12-2002)
| Kommentar Fra : Jonas Skafte Jensen |
Dato : 21-12-02 17:30 |
|
Det er muligvis fordi Access vil have # rundt om datoer...
Prøv det her:
strSQL = "INSERT INTO Messages (" &_
"ForumID, InReplyTo, PostedBy, Email, Subject, Body, Date) " &_
"values('" & ForumID & "', '" & InReplyTo & "', '" & PostedBy &
"', '" & Email & "', '" & Subject & "', '" & Body & "', '#" & Now
& "#')"
"Lasse Nyberg" <lassenyberg@mail.dk> skrev i en meddelelse
news:au23ef$625$1@sunsite.dk...
> > response.write strSQL
> > response.end
> > lige inden din Conn.Execute (linie123)
> > Det er tit indlysende når man først for set hvad det er den sender til
> > basen.
>
> Det har jeg så lige prøvet.. den skriver flot følgende:
> INSERT INTO Messages (ForumID, InReplyTo, PostedBy, Email, Subject, Body,
> Date) values('6', '0', 'Lasse Nyberg', 'lassenyberg@mail.tele.dk',
> 'Overskrift', 'Brødtekst', '21-12-2002 17:01:18')
> Jeg kan ikke se nogle fejl i det ovenstående.. Men Fjerner jeg de to
> linjer igen får jeg samme fejl.
>
> > > Microsoft OLE DB Provider for ODBC Drivers fejl '80040e14'
> > > [Microsoft][ODBC Microsoft Access-driver] Der er en syntaksfejl i
> > > INSERT INTO-sætningen.
> > > /fff2002/login/forum/post.asp, linje 123
> > >
> > > Linje 123 er Conn.Execute(strSQL) linjen
>
> Hvad kan jeg have gjot forkert..
>
> Mvh
> Lasse Nyberg
>
> --
> Vil du lære at kode HTML, XHTML, CSS, SSI eller ASP ???
> - Pædagogiske tutorials på dansk
> - Kom godt i gang med koderne
> KLIK HER! => http://www.html.dk/tutorials
| |
Jørn Andersen (21-12-2002)
| Kommentar Fra : Jørn Andersen |
Dato : 21-12-02 18:52 |
|
On Sat, 21 Dec 2002 14:50:42 +0000 (UTC), Lasse Nyberg
<lassenyberg@mail.dk> wrote:
>Jeg har skrevet følgende linjer:
>strSQL = "INSERT INTO Messages (" &_
>
>"ForumID, InReplyTo, PostedBy, Email, Subject, Body, Date) " &_
>
>"values('" & ForumID & "', '" & InReplyTo & "', '" & PostedBy &
>"', '" & Email & "', '" & Subject & "', '" & Body & "', '" & Now
>& "')"
Formentlig er det nogle af dine feltnavne, som er "reserverede ord" i
MS Access. Jeg kan ikke lige huske hvilke, men Date er nok min
'hovedmistænkte'
Løsningen (hvis det altså er det) er at sætte [] om feltnavnet:
strSQL = "INSERT INTO Messages (" &_
"ForumID, InReplyTo, PostedBy, Email, Subject, Body, [Date]) " & _
"VALUES ('" & ForumID & "', '" & InReplyTo & "', '" & _
PostedBy & "', '" & Email & "', '" & Subject & "', '" & _
Body & "', '" & Now & "')"
Desuden: Er du siker på, at fx ForumID er et tekstfelt?
Hvis det er et talfelt, skal der ikke være ' ' om værdierne.
Samme spørgsmål til InReplyTo.
Endelig er der ingen grund til at indsætte værdien af Now i
SQL-strengen - du kan ligeså godt lade Access gøre det. Det kan spare
dig for et evt. dato-format-problem.
Hvis mine antagelser er rigtige, bliver det:
strSQL = "INSERT INTO Messages (" & _
"ForumID, InReplyTo, PostedBy, Email, Subject, Body, [Date]) " & _
"VALUES (" & ForumID & ", " & InReplyTo & ", '" & _
PostedBy & "', '" & Email & "', '" & Subject & "', '" & _
Body & "', Now())"
Good luck!
--
Jørn Andersen,
Brønshøj
| |
Jesper Stocholm (21-12-2002)
| Kommentar Fra : Jesper Stocholm |
Dato : 21-12-02 20:27 |
|
Jørn Andersen wrote :
> On Sat, 21 Dec 2002 14:50:42 +0000 (UTC), Lasse Nyberg
> <lassenyberg@mail.dk> wrote:
>
>>Jeg har skrevet følgende linjer:
>>strSQL = "INSERT INTO Messages (" &_
>>
>>"ForumID, InReplyTo, PostedBy, Email, Subject, Body, Date) " &_
>>
>>"values('" & ForumID & "', '" & InReplyTo & "', '" & PostedBy &
>>"', '" & Email & "', '" & Subject & "', '" & Body & "', '" & Now
>>& "')"
>
> Formentlig er det nogle af dine feltnavne, som er "reserverede ord" i
> MS Access. Jeg kan ikke lige huske hvilke, men Date er nok min
> 'hovedmistænkte'
Det kunne godt se ud som om det - jvf
http://support.microsoft.com/default.aspx?scid=kb;en-us;209187
--
Jesper Stocholm - http://stocholm.dk
http://asp-faq.dk : FAQ for dk.edb.internet.webdesign.serverside.asp
http://usenet.dk/netikette/citatteknik.html: Skriv under det du svarer på
Svar venligt til gruppen og ikke til mig privat !
| |
Lasse Nyberg (22-12-2002)
| Kommentar Fra : Lasse Nyberg |
Dato : 22-12-02 17:39 |
|
Hej Alle..
Mange tak for de gode svar.. Nu virker det
Det hjalp at fjerne ' omkring ForumID og InReplyTo
Med venlig hilsen
Lasse Nyberg
--
Vil du lære at kode HTML, XHTML, CSS, SSI eller ASP ???
- Pædagogiske tutorials på dansk
- Kom godt i gang med koderne
KLIK HER! => http://www.html.dk/tutorials
| |
|
|