/ Forside / Teknologi / Udvikling / ASP / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
ASP
#NavnPoint
smorch 9259
Harlekin 1866
molokyle 1040
Steffanst.. 758
gandalf 657
smilly 564
gibson 560
cumano 530
MouseKeep.. 480
10  Random 410
Syntax error in INSERT INTO statement
Fra : Anders Lau Mandsholm


Dato : 13-10-02 11:20

Jeg får denne syntaks-fejl på SQL-strengen, der ligeledes er skrevet ud i
fejl-meddelelsen:

<start>

INSERT INTO TblCustomer
(CustomerID,Submitted,Password,Company,Name,Firstname,Street,Place,PostalCod
e,Town,Telephone,Cellular,Fax,Website,Email)VALUES ('12345678','13-10-2002
12:12:10','11111111','Firmanavn','Navn','Fornavn','Gade','','1111','By','11
11 11 11','','11 11 11 11','www.domain.dk','alias@domain.dk')

Microsoft JET Database Engine error '80040e14'

Syntax error in INSERT INTO statement.

<slut>

Hvor er den syntaks-fejl!? Jeg kan ikke se skoven for bare træer og
SQL-strengen er kopieret fra en anden fungerende SQL-streng. Databasen er
Access2002 og CustomerID er nøgle af typen Long Integer, Submitted er af
typen Date/Time og resten er af typen Text.

Jeg har prøvet med ; i slutningen af strengen uden held og jeg har prøvet at
fjerne indsætning af dato-tid i Submitted - også uden held.

/Anders
--
Anders Lau Mandsholm
Stud.merc.(dat.)
www.mandsholm.dk



 
 
Jakob Andersen (13-10-2002)
Kommentar
Fra : Jakob Andersen


Dato : 13-10-02 11:27

"Anders Lau Mandsholm" <no@spam.com> wrote
> Hvor er den syntaks-fejl!? Jeg kan ikke se skoven for bare træer og
> SQL-strengen er kopieret fra en anden fungerende SQL-streng. Databasen er
> Access2002 og CustomerID er nøgle af typen Long Integer, Submitted er af
> typen Date/Time og resten er af typen Text.


Du skal ikke have enkeltplinger (') uden om tal værdier dvs. dit CustomerID
skal være 12345678 og ikke '12345678'.

--
Jakob Andersen




Anders Lau Mandsholm (13-10-2002)
Kommentar
Fra : Anders Lau Mandsholm


Dato : 13-10-02 12:37

> Du skal ikke have enkeltplinger (') uden om tal værdier dvs. dit
CustomerID
> skal være 12345678 og ikke '12345678'.

Det har jeg prøvet, men får stadig fejlen:

INSERT INTO TblCustomer
(CustomerID,Submitted,Password,Company,Name,Firstname,Street,Place,PostalCod
e,Town,Telephone,Cellular,Fax,Website,Email)VALUES (12345678,'13-10-2002
13:32:42','hyl51bop','Mandsholm EDB','Mandsholm','Anders Lau','Ludvig
Holbergs Vej 31, kld.','','8230','Åbyhøj','86 25 56 36','','86 25 56
36','www.mandsholm.it','lau@mandsholm.it')
Microsoft JET Database Engine error '80040e14'

Syntax error in INSERT INTO statement.

Jeg har ligeledes prøvet at køre begge SQL-strenge (både med og uden '' om
CustomerID) direkte i Access og der virker de fint.

Kunne denne fejl komme, såfremt der ikke er skriveadgang til den mappe, hvor
DBen ligger!? Det burde der være, men man kan jo aldrig vide...

/Anders
--
Anders Lau Mandsholm
Stud.merc.(dat.)
www.mandsholm.dk



Jakob Andersen (13-10-2002)
Kommentar
Fra : Jakob Andersen


Dato : 13-10-02 12:58

"Anders Lau Mandsholm" <no@spam.com> wrote
> (CustomerID,Submitted,Password,Company,Name
-------------------------------------------------^^^

Jeg er ikke lige 100% sikker på det men det kan godt være at Name er et
reserveret ord i MS Access, prøv med [Name] istedet.

--
Jakob Andersen



Jørn Andersen (13-10-2002)
Kommentar
Fra : Jørn Andersen


Dato : 13-10-02 12:59

On Sun, 13 Oct 2002 13:36:45 +0200, "Anders Lau Mandsholm"
<no@spam.com> wrote:

>> Du skal ikke have enkeltplinger (') uden om tal værdier dvs. dit
>CustomerID
>> skal være 12345678 og ikke '12345678'.
>
>Det har jeg prøvet, men får stadig fejlen:
>
>INSERT INTO TblCustomer
>(CustomerID,Submitted,Password,Company,Name,Firstname,Street,Place,PostalCod
>e,Town,Telephone,Cellular,Fax,Website,Email)VALUES (12345678,'13-10-2002
>13:32:42','hyl51bop','Mandsholm EDB','Mandsholm','Anders Lau','Ludvig
>Holbergs Vej 31, kld.','','8230','Åbyhøj','86 25 56 36','','86 25 56
>36','www.mandsholm.it','lau@mandsholm.it')
>Microsoft JET Database Engine error '80040e14'
>
>Syntax error in INSERT INTO statement.

Et par muligheder:
Prøv at fjerne kommaet i 'Ludvig Holbergs Vej 31, kld.'
Prøv at indsætte et mellemrum før VALUES
Prøv i det hele taget at have mellemrum efter kommaer og paranteser
Jeg kan ikke huske, om Name er et reserveret ord - prøv at sætte
firkant-paranteser om felt-navne: [Name]

Kig i øvrigt:
<URL: http://www.aspfaq.com/show.asp?id=2400>

>Jeg har ligeledes prøvet at køre begge SQL-strenge (både med og uden '' om
>CustomerID) direkte i Access og der virker de fint.

Men det skal (i ASP) være uden, hvis det er et tal-felt.

Desuden: Hvis Submitted blot skal indeholde tiden Nu, så brug
databasens indbyggede: Now() i stedet for at generere den fra VB
Script. (Har dog formentlig ikke noget med dit problem at gøre ...)

>Kunne denne fejl komme, såfremt der ikke er skriveadgang til den mappe, hvor
>DBen ligger!? Det burde der være, men man kan jo aldrig vide...

Det er jo ret nødvendigt. Hvis det er første gang, du skriver til
databasen, ville jeg helt klart vælge et *meget* simplere udtryk at
teste med - der er simpelthen for mange muligheder for at ting kan gå
galt

--
Jørn Andersen,
Brønshøj

Anders Lau Mandsholm (13-10-2002)
Kommentar
Fra : Anders Lau Mandsholm


Dato : 13-10-02 14:10

[cut]

> Jeg kan ikke huske, om Name er et reserveret ord - prøv at sætte
> firkant-paranteser om felt-navne: [Name]


[cut]

> Kig i øvrigt:
> <URL: http://www.aspfaq.com/show.asp?id=2400>


[cut]

> --
> Jørn Andersen,
> Brønshøj

Har fundet ud af det: Password er et reserveret ord - dog ikke officielt,
men ifølge aspfaq.com.

Sikke en masse reserverede ord, der iøvrigt findes!? Kendte ikke aspfaq.com,
men det gør jeg nu...

Name er også reserveret, men [] omkring password gjorde, at det nu virker!?

Tak

/Anders
--
Anders Lau Mandsholm
Stud.merc.(dat.)
www.mandsholm.dk



Flemming Jensen (14-10-2002)
Kommentar
Fra : Flemming Jensen


Dato : 14-10-02 17:00

Anders Lau Mandsholm skrev

> Har fundet ud af det: Password er et reserveret ord - dog ikke officielt,
> men ifølge aspfaq.com.

Jeg bruger password i min access database, så jeg synes det lyder mærkelig
at de skulle være reserveret.

__
Flemming Jensen



Jesper Stocholm (14-10-2002)
Kommentar
Fra : Jesper Stocholm


Dato : 14-10-02 17:21

Anders Lau Mandsholm wrote :

> [cut]
>
>> Jeg kan ikke huske, om Name er et reserveret ord - prøv at sætte
>> firkant-paranteser om felt-navne: [Name]
>
>
> [cut]
>
>> Kig i øvrigt:
>> <URL: http://www.aspfaq.com/show.asp?id=2400>

>
> Har fundet ud af det: Password er et reserveret ord - dog ikke
> officielt, men ifølge aspfaq.com.

kan du ikke give et link til den side direkte ? Jeg har et bookmark
til en liste liggende på http://www.btgi.net/reservedwords.cfm, og
den nævner ikke password.

Jeg kan også give dig denne side fra microsoft.com, der omhandler Access:

http://support.microsoft.com/default.aspx?scid=KB;EN-US;Q209187&LN=EN-US

og for SQL Server

http://msdn.microsoft.com/library/default.asp?url=/library/en-us/tsqlref/ts_ra-rz_9oj7.asp?frame=true



--
Jesper Stocholm
http://stocholm.dk
Overvejer du at købe bøger ved saxo.dk ? Kig først på
http://www.firmcheck.dk/Info.asp?website=www.saxo.dk

Jens Gyldenkærne Cla~ (15-10-2002)
Kommentar
Fra : Jens Gyldenkærne Cla~


Dato : 15-10-02 09:45

Flemming Jensen skrev:

> Jeg bruger password i min access database, så jeg synes det
> lyder mærkelig at de skulle være reserveret.

Access tillader brug af reserverede ord i en database. Jeg har fx
lige lavet tabellen "desc" med felterne: "select", "into", "date",
"by", "order", "order by", "insert", "delete" og "where".
Det fungerer (desværre) fint.

Det er først i det øjeblik man skal skrive SQL til databasen at de
reserverede ord giver problemer. Hvis man (som GUI-værktøjerne til
Access vist gør) altid benytter []-klammer omkring feltnavne, så
giver det ingen problemer. Men skriver man:

SELECT select, into, date
FROM desc
WHERE where = order by
AND date = DATE
ORDER BY order DESC

- så er det et par gode grunde til at det ikke virker .


Mange ting ville være lettere hvis reserverede ord og problematiske
tegn ikke var tilladt i objektnavne.
--
Jens Gyldenkærne Clausen
Svar venligst under det du citerer, og citer kun det der er
nødvendigt for at forstå dit svar i sammenhængen. Se hvorfor og
hvordan på http://usenet.dk/netikette/citatteknik.html

Peter Lykkegaard (15-10-2002)
Kommentar
Fra : Peter Lykkegaard


Dato : 15-10-02 10:44

Som svar på skriblerier nedfældet af Jens Gyldenkærne Clausen :

> Mange ting ville være lettere hvis reserverede ord og problematiske
> tegn ikke var tilladt i objektnavne.

Det er de per definition heller ikke
Der skal bare lidt interaktion fra programmørens side

Skal man flytte noget fra Access til et andet rdbms så lærer man det på den
hårde måde

mvh/Peter Lykkegaard




Lars Hoffmann (15-10-2002)
Kommentar
Fra : Lars Hoffmann


Dato : 15-10-02 12:52

"Jens Gyldenkærne Clausen" <jens@gyros.invalid> escribió

> Access tillader brug af reserverede ord i en database.

Hvad så når feltet hedder [mitfelt] (med "[" som en del af navnet)?



Jens Gyldenkærne Cla~ (15-10-2002)
Kommentar
Fra : Jens Gyldenkærne Cla~


Dato : 15-10-02 10:53

Peter Lykkegaard skrev:

>> Mange ting ville være lettere hvis reserverede ord og
>> problematiske tegn ikke var tilladt i objektnavne.
>
> Det er de per definition heller ikke
> Der skal bare lidt interaktion fra programmørens side

Såvel Access som MSSQL tillader brug af uhensigtsmæssige feltnavne.

Man kan argumentere for at det er programmørens opgave at vælge en
fornuftige navngivning, men jeg mener at MS gør deres brugere en
bjørnetjeneste ved ikke at forbyde problematiske objektnavne i
selve programmet.
--
Jens Gyldenkærne Clausen
Svar venligst under det du citerer, og citer kun det der er
nødvendigt for at forstå dit svar i sammenhængen. Se hvorfor og
hvordan på http://usenet.dk/netikette/citatteknik.html

Peter Lykkegaard (15-10-2002)
Kommentar
Fra : Peter Lykkegaard


Dato : 15-10-02 11:16

Som svar på skriblerier nedfældet af Jens Gyldenkærne Clausen :

> Peter Lykkegaard skrev:
>
>>> Mange ting ville være lettere hvis reserverede ord og
>>> problematiske tegn ikke var tilladt i objektnavne.
>>
>> Det er de per definition heller ikke
>> Der skal bare lidt interaktion fra programmørens side
>
> Såvel Access som MSSQL tillader brug af uhensigtsmæssige feltnavne.

Jeg mener at MSSQL ikke er glad for æøå (har ikke prøvet på en ny
tabel/felt)
Upsizing wizard og import værktøjer kløjs i det hvis det er æøå i
tabel-/feltnavnet

Med per definition så mente jeg at det jo ikke kan lade sig gøre uden
workaround med firkantklammer - fx [desc]
>
> Man kan argumentere for at det er programmørens opgave at vælge en
> fornuftige navngivning, men jeg mener at MS gør deres brugere en
> bjørnetjeneste ved ikke at forbyde problematiske objektnavne i
> selve programmet.

Subscribe

mvh/Peter Lykkegaard



Jens Gyldenkærne Cla~ (15-10-2002)
Kommentar
Fra : Jens Gyldenkærne Cla~


Dato : 15-10-02 11:53

Peter Lykkegaard skrev:

> Jeg mener at MSSQL ikke er glad for æøå (har ikke prøvet på en
> ny tabel/felt)


Oprettet fra EM fungerer det fint (MSSQL 2000).

> Med per definition så mente jeg at det jo ikke kan lade sig
> gøre uden workaround med firkantklammer - fx [desc]

Det er sikkert rigtigt (ikke afprøvet).
--
Jens Gyldenkærne Clausen
Svar venligst under det du citerer, og citer kun det der er
nødvendigt for at forstå dit svar i sammenhængen. Se hvorfor og
hvordan på http://usenet.dk/netikette/citatteknik.html

Peter Lykkegaard (15-10-2002)
Kommentar
Fra : Peter Lykkegaard


Dato : 15-10-02 12:10

Som svar på skriblerier nedfældet af Jens Gyldenkærne Clausen :

> Peter Lykkegaard skrev:
>
>> Jeg mener at MSSQL ikke er glad for æøå (har ikke prøvet på en
>> ny tabel/felt)
>
> Oprettet fra EM fungerer det fint (MSSQL 2000).

Damn, så er det åbentbart "kun" DTS der kløjs i det - skrammel

Jeg har en database jeg på et tidspunkt skal lægge over på MSSQL, men tiden
har ikke lige været der da jeg har brugt æøå i feltnavnene og det er en
_stuur_ access applikation

Kunne være jeg skal kikke lidt på det igen - ud fra den vinkel - takker

Ideen falder jo nok igen på at DTS stadig vil kløjs i det

mvh/Peter Lykkegaard



Jens Gyldenkærne Cla~ (15-10-2002)
Kommentar
Fra : Jens Gyldenkærne Cla~


Dato : 15-10-02 13:07

Lars Hoffmann skrev:

>> Access tillader brug af reserverede ord i en database.
>
> Hvad så når feltet hedder [mitfelt] (med "[" som en del af
> navnet)?

Den går ikke. Udråbstegn og punktum kan heller ikke bruges, men
bortset fra de fire tegn ([, ], ., !) er det vist ikke nogen
begrænsninger. Jeg har prøvet med anførselstegn (enkelte og
dobbelte), paranteser ("()" + "{}"), #, komma, \, ;, |, %, $, * og
@ - alle virker fint.
--
Jens Gyldenkærne Clausen
Svar venligst under det du citerer, og citer kun det der er
nødvendigt for at forstå dit svar i sammenhængen. Se hvorfor og
hvordan på http://usenet.dk/netikette/citatteknik.html

Søg
Reklame
Statistik
Spørgsmål : 177505
Tips : 31968
Nyheder : 719565
Indlæg : 6408554
Brugere : 218887

Månedens bedste
Årets bedste
Sidste års bedste