Avatar billede topsite Nybegynder
13. oktober 2002 - 10:54 Der er 15 kommentarer og
1 løsning

DB: Access - Insert into problem

// Indsætter i Access database

form1.Q1.CommandText := 'INSERT INTO Kunder (Navn, Adresse, Telefon, Fax, E-mail, Domæne, Ekstra_domæner, Webpakke, MySQL, MySQL_Brugernavn, MySQL_Kodeord, Yderligere, Brugernavn, Kodeord, MySQL_Host, MySQL_Andet) '+
                      'VALUES (:Navn, :Adresse, :Telefon, :Fax, :E-mail, :Domæne, :Ekstra_domæne, :Webpakke, :MySQL, :MySQL_Brugernavn, :MySQL_Kodeord, :Yderligere, :Brugernavn, :Kodeord, :MySQL_Host, :MySQL_Andet)';

// Genererer Queryes med Params

form1.Q1.Parameters.ParamByName('Navn').Value := dxDNEdit1.Text;
form1.Q1.Parameters.ParamByName('Adresse').Value := dxDNMemo1.Text;
form1.Q1.Parameters.ParamByName('Telefon').Value := dxDNEdit2.Text;
form1.Q1.Parameters.ParamByName('Fax').Value := dxDNEdit3.Text;
form1.Q1.Parameters.ParamByName('E-mail').Value := dxDNEdit4.Text;
form1.Q1.Parameters.ParamByName('Domæne').Value := dxDNEdit5.Text;
form1.Q1.Parameters.ParamByName('Ekstra_domæne').Value := dxDNMemo2.Text;
form1.Q1.Parameters.ParamByName('Webpakke').Value := dxDNEdit6.Text;
form1.Q1.Parameters.ParamByName('MySQL').Value := dxCheckbox1.Checked;
form1.Q1.Parameters.ParamByName('MySQL_Brugernavn').Value := dxDNEdit9.Text;
form1.Q1.Parameters.ParamByName('MySQL_Kodeord').Value := dxDNEdit13.Text;
form1.Q1.Parameters.ParamByName('Yderligere').Value := RichEdit1.Text;
form1.Q1.Parameters.ParamByName('Brugernavn').Value := dxDNEdit7.Text;
form1.Q1.Parameters.ParamByName('Kodeord').Value := dxDNEdit8.Text;
form1.Q1.Parameters.ParamByName('MySQL_Host').Value := dxDNEdit11.Text;
form1.Q1.Parameters.ParamByName('MySQL_Andet').Value := dxDNEdit12.Text;

form1.Q1.Execute;

Jeg får i overstående kode, en ret ireaterende fejl, som jeg har svært ved at præcisere, kan man skriven noget for at få fejlen uddybet, eller kan i hjælpe mig?!

Fejlen: Project Project1.exe raised exception class EOleException with message 'Syntax error in INSERT INTO statement'.
Avatar billede riversen Nybegynder
13. oktober 2002 - 10:55 #1
Insert Into Kunder values bla bla bla
Avatar billede topsite Nybegynder
13. oktober 2002 - 10:56 #2
huh?
Avatar billede riversen Nybegynder
13. oktober 2002 - 10:58 #3
glemmer du ikke order "values" i din sql
Avatar billede riversen Nybegynder
13. oktober 2002 - 10:58 #4
ordet even
Avatar billede topsite Nybegynder
13. oktober 2002 - 11:00 #5
form1.Q1.CommandText := 'INSERT INTO Kunder VALUES (Navn, Adresse, Telefon, Fax, E-mail, Domæne, Ekstra_domæner, Webpakke, MySQL, MySQL_Brugernavn, MySQL_Kodeord, Yderligere, Brugernavn, Kodeord, MySQL_Host, MySQL_Andet) '+
'VALUES (:Navn, :Adresse, :Telefon, :Fax, :E-mail, :Domæne, :Ekstra_domæne, :Webpakke, :MySQL, :MySQL_Brugernavn, :MySQL_Kodeord, :Yderligere, :Brugernavn, :Kodeord, :MySQL_Host, :MySQL_Andet)';

Sådan i mener ?!

nu siger den:
Missing Semicolon (;) at end og SQL
Avatar billede riversen Nybegynder
13. oktober 2002 - 11:05 #6
form1.Q1.CommandText := 'INSERT INTO Kunder VALUES (Navn, Adresse, Telefon, Fax, E-mail, Domæne, Ekstra_domæner, Webpakke, MySQL, MySQL_Brugernavn, MySQL_Kodeord, Yderligere, Brugernavn, Kodeord, MySQL_Host, MySQL_Andet); '+
'VALUES (:Navn, :Adresse, :Telefon, :Fax, :E-mail, :Domæne, :Ekstra_domæne, :Webpakke, :MySQL, :MySQL_Brugernavn, :MySQL_Kodeord, :Yderligere, :Brugernavn, :Kodeord, :MySQL_Host, :MySQL_Andet)';

prøv at copy/paste det her
Avatar billede riversen Nybegynder
13. oktober 2002 - 11:06 #7
jeg var egentlig ikke klar over at det var tilladt med
+
'VALUES (:Navn, :Adresse, :Telefon, :Fax, :E-mail, :Domæne, :Ekstra_domæne, :Webpakke, :MySQL, :MySQL_Brugernavn, :MySQL_Kodeord, :Yderligere, :Brugernavn, :Kodeord, :MySQL_Host, :MySQL_Andet)';
Avatar billede topsite Nybegynder
13. oktober 2002 - 11:06 #8
Nu laver den en ny fejl:
Characters found after end of SQL statement
Avatar billede topsite Nybegynder
13. oktober 2002 - 11:07 #9
Jeg vil gerne have dit eksempel på en insert - mit lorte kode med +'er her og der :D er sikkert ikke godt.. jeg prøvede mig bare frem indtil jeg fik noget der lign. en løsning.. :)
Avatar billede riversen Nybegynder
13. oktober 2002 - 11:09 #10
form1.Q1.CommandText := 'INSERT INTO Kunder VALUES (Navn, Adresse, Telefon, Fax, E-mail, Domæne, Ekstra_domæner, Webpakke, MySQL, MySQL_Brugernavn, MySQL_Kodeord, Yderligere, Brugernavn, Kodeord, MySQL_Host, MySQL_Andet);'

hvad med det? mail evt en kopi af din db...eksperten@riversen.dk
Avatar billede riversen Nybegynder
13. oktober 2002 - 11:09 #11
nevermind med kopien...probs med mail pt
Avatar billede topsite Nybegynder
13. oktober 2002 - 11:11 #12
mm - sådan som du gør det, hvordan ved den så hvilke parametres den skal bruge ?
Avatar billede riversen Nybegynder
13. oktober 2002 - 11:12 #13
hov...der skal også lige et ";" tilsidst i linien tror jeg...nu er jeg ikke lige delphi programmør :-)
Avatar billede riversen Nybegynder
13. oktober 2002 - 11:13 #14
nå, jeg roder nok i noget jeg ikke har forstand på
Avatar billede riversen Nybegynder
13. oktober 2002 - 11:16 #15
jeg har noget sql fra et java program der ser sådan ud:

"INSERT into MedlemsGruppe values ( " + medlemsGruppeID +
                                    ", '" + gruppeNavn +
                                    "', '" + beskrivelse +
                                    "', " + kontingent +
                                    ", " + rabat + " )";

måske du kan lave lidt paralleller...der skiftes fra tekstreng til aflæsning af variabler i klassen...fx "kontingent". Det hele bliver så en lang SQL-tekststreng
Avatar billede topsite Nybegynder
13. oktober 2002 - 11:23 #16
lukker
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