Avatar billede jps6kb Novice
09. august 2005 - 19:28 Der er 27 kommentarer og
1 løsning

Fejl i insert

Jeg har siddet og kæmpet med det her i en time nu, og er sikker på det er mig der har misset et eller andet..

Jeg har en SQL sætning der hedder:

sql = "insert into [user]([name], username, password, email, created, billede, tekst, forum, news, admin, article, ip) values('"&strNavn&"', '"&strBrugernavn&"', '"&strPassword&"', '"&strEmail&"', '" & dato & "','"& newid &"', '"&strTxt&"', '0', '0', '0', '0', '0.0.0.0')"


Som, hvis man udskriver den, giver:

insert into [user]([name], username, password, email, created, billede, tekst, forum, news, admin, article, ip) values('test', 'test', 'test', 'test', '8/9/2005','0', 'testtesttesttest', '0', '0', '0', '0', '0.0.0.0')

Fejlen jeg får er:

Microsoft JET Database Engine error '80040e14'

Syntax error in INSERT INTO statement.

/fisk/strnewuser.asp, line 68


Hvad er fejlen? Alle felter er 'tekst' udover tekst som er 'notat' .. meget logisk, ikke? :D
Avatar billede busschou Praktikant
09. august 2005 - 19:31 #1
der skal # omkring datoer
Avatar billede busschou Praktikant
09. august 2005 - 19:31 #2
sql = "insert into [user]([name], username, password, email, created, billede, tekst, forum, news, admin, article, ip) values('"&strNavn&"', '"&strBrugernavn&"', '"&strPassword&"', '"&strEmail&"', #" & dato & "#,'"& newid &"', '"&strTxt&"', '0', '0', '0', '0', '0.0.0.0')"
Avatar billede busschou Praktikant
09. august 2005 - 19:32 #3
og dog, det skal der hvis created er et dato felt, men er det også et tekst felt?
Avatar billede nielle Nybegynder
09. august 2005 - 19:32 #4
Og der skal ikke '-tegn rundt om tal.
Avatar billede busschou Praktikant
09. august 2005 - 19:33 #5
hvis det virkelig alt er tekst felter i din tabel,,,sååå
Avatar billede nielle Nybegynder
09. august 2005 - 19:33 #6
... man skal læse spørgsmålet ordentligt. Hvorfor i alverdene  har du sat alle felterne til tekst?
Avatar billede busschou Praktikant
09. august 2005 - 19:33 #7
hehe undrer også mig, men hvis det alt sammen er tekst ser det vist ok ud i mine øjne
Avatar billede nielle Nybegynder
09. august 2005 - 19:35 #8
Prøv at udskrive SQL'en til skærm før at du udføre den. I 9 ud af 10 tilfælde skyldes underlige database-fejl at SQL'en indeholder noget andet end man troede.
Avatar billede jps6kb Novice
09. august 2005 - 19:35 #9
Jeg har sat alle felterne (undtagen tekst) som tekstfelter fordi jeg ikke skal andet med dem end præsentere dem efterfølgende.. så det er vel ligemeget.. :)

Men er der så noget galt med den?
Avatar billede nielle Nybegynder
09. august 2005 - 19:38 #10
Nej, det er ikke helt ligegyldigt - f.eks. fylder tal mindre i databasen hvis de rent faktisk gemmes som tal i stedet for som tekst.
Avatar billede busschou Praktikant
09. august 2005 - 19:39 #11
nielle >> hvis du læser spørgsmålet igen så er den udskrevet :o)
Avatar billede jps6kb Novice
09. august 2005 - 19:39 #12
Ja, okay.. point taken :) Det vil jeg lige tage til efterretning.. vidste jeg ikke.. men der er ikke nogen grund til at det ikke skulle virke?
Avatar billede nielle Nybegynder
09. august 2005 - 19:39 #13
Umiddelbart ser der ikke ud til at bære noget galt med din SQL, men prøv at lave den der den´bug som jeg foreslog. Det kan være at årsagen pludselig er helt klar og doh bagefter.
Avatar billede nielle Nybegynder
09. august 2005 - 19:40 #14
Sory.
Avatar billede jps6kb Novice
09. august 2005 - 19:44 #15
Du mener fjerne  '  ved tal? Intet.. samme fejl, desværre..
Avatar billede busschou Praktikant
09. august 2005 - 19:45 #16
jeg har en tendens til at tro at et af dine felter måske ikke er tekst
For ellers ville den ikke give den fejl,,,
Avatar billede nielle Nybegynder
09. august 2005 - 19:45 #17
Umiddelbaret ser det altsammen korrekt ud. Der er heller ikke nogen af dine felter som er reservered ord (selv om created kommer tæt). Prøv alligevel at omklamre dem med []-klammer og se så om det hjælper.
Avatar billede jps6kb Novice
09. august 2005 - 19:47 #18
Nielle.. den vinder du.. [] klarede det.. hehe.. *kigger på tidligere indlæg* Nååeh.. DOH! ;) Smid et svar.. og tak bus for deltagelse ;)
Avatar billede busschou Praktikant
09. august 2005 - 19:48 #19
du kan også prøve at sætte mellemrum imellem tabel navn og parantes
sql = "insert into [user] ([name], username, password, email, created, billede, tekst, forum, news, admin, article, ip) values ('"&strNavn&"', '"&strBrugernavn&"', '"&strPassword&"', '"&strEmail&"', '" & dato & "','"& newid &"', '"&strTxt&"', '0', '0', '0', '0', '0.0.0.0')"
Avatar billede busschou Praktikant
09. august 2005 - 19:48 #20
created, er det reserveret ? nu er verden sku at lave ;o) hehe
Avatar billede jps6kb Novice
09. august 2005 - 19:49 #21
Ved ikke om det var created.. smed allesammen derind.. hehe..
Avatar billede busschou Praktikant
09. august 2005 - 19:50 #22
det er jo så lidt overflødigt men ok
Avatar billede nielle Nybegynder
09. august 2005 - 19:50 #23
Nej, jeg sagde bare at den sæt på - disse er nemlig reserberet i A2000:

CreateDatabase
CreateField
CreateGroup
CreateIndex
CreateObject
CreateProperty
CreateRelation
CreateTableDef
CreateUser
CreateWorkspace
Avatar billede nielle Nybegynder
09. august 2005 - 19:51 #24
... og et svar :^)
Avatar billede busschou Praktikant
09. august 2005 - 19:52 #25
nielle >> ja dem kan jeg forstå, men hvis det er created som gjorde så undrer det mig for den ville jeg ikke vide hvad jeg skulle bruge til ...men hvad :o)
Avatar billede nielle Nybegynder
09. august 2005 - 19:54 #26
Nu ved vi jo faktisk ikke om det var created, eller et af de andre felt-navne, som fejlede. Selv kunne jeg da godt tænke mig at vide det. Testen er nem nok - jps6kb kunne du ikke prøve at fjerne []-parenteserne en af gangen til at det begynder at fejle?
Avatar billede busschou Praktikant
09. august 2005 - 19:59 #27
jeg ville næsten hellere tro på admin ... men ja
Avatar billede jps6kb Novice
09. august 2005 - 20:32 #28
Jeg kan afsløre at password er reserveret ;)
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
Kurser inden for grundlæggende programmering

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