Avatar billede iver25 Nybegynder
11. oktober 2001 - 11:31 Der er 10 kommentarer og
1 løsning

Problem med SQL sætning

Jeg bruger følgende sætning til at hente en værdi i en access tabel:

  q.SQL.Add(\'SELECT proevemedlem FROM medlem WHERE (medlemsnummer=\'\'\'+Medlemsnummer+\'\'\')\');

problemet er at den kommer med følgende fejlmeddelelse: \"incompatible types \'string\' and \'Integer\'.
medlemsnummer er et autonummeringsfelt i access, og Medlemsnummer er en Integer varibael i Delphi.
Avatar billede Søren Bech Morsing Praktikant
11. oktober 2001 - 11:33 #1
så skal du ikke ha \'\" rundt om men kun \" altså \"gåseøjn\"
Avatar billede iver25 Nybegynder
11. oktober 2001 - 11:37 #2
Når jeg skriver følgende:

  q.SQL.Add(\'SELECT proevemedlem FROM medlem WHERE (medlemsnummer=\"+Medlemsnummer+\")\');

Får jeg en fejl med \"Too few parameters\"
Avatar billede jekk Nybegynder
11. oktober 2001 - 11:42 #3
Har du prøvet at undlade det sidste + tegn efter medlemsnummer ?
Avatar billede Søren Bech Morsing Praktikant
11. oktober 2001 - 11:43 #4
q.SQL.Add(\"SELECT proevemedlem FROM medlem WHERE (medlemsnummer=\"+Medlemsnummer+\")\");

Vil jeg mene det skulle være
Avatar billede iver25 Nybegynder
11. oktober 2001 - 11:45 #5
Hvis jeg bruger \" i start og slut, får jeg en fejl der siger: \"Illegal character in input file\".
Avatar billede martinlind Nybegynder
11. oktober 2001 - 11:49 #6
q.SQL.Add(\'SELECT proevemedlem FROM medlem WHERE (medlemsnummer=\'+Medlemsnummer+\')\');

/Martin
Avatar billede a_c Nybegynder
11. oktober 2001 - 11:50 #7
Ja problemer er at Q.sql.add skal have en streng og at du fylder medlemsnummer ind der er en integer.
lav det du først skrev om til om til
\'SELECT proevemedlem FROM medlem WHERE (medlemsnummer=\'\'\'+inttostr(Medlemsnummer)+\'\'\')\'

det burde virke, men jeg har ikke lige test det.

A_C
Avatar billede a_c Nybegynder
11. oktober 2001 - 11:52 #8
Og da Medlemsnummer er en integer bliver det jo nok istedet
\'+inttostr(Medlemsnummer)+\'
Avatar billede iver25 Nybegynder
11. oktober 2001 - 11:52 #9
Det har jeg prøvet, men så får jeg en \"datatype mismatch\", for det access skal bruge, er jo en integer.....
Avatar billede a_c Nybegynder
11. oktober 2001 - 11:53 #10
Altså
\'SELECT proevemedlem FROM medlem WHERE (medlemsnummer=\'+inttostr(Medlemsnummer)+\')\'
Avatar billede iver25 Nybegynder
11. oktober 2001 - 11:57 #11
Så virker det. Mange tak for hjælpen
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