Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Datenbanken (https://www.delphipraxis.net/15-datenbanken/)
-   -   Delphi Problem mit bool Datenbankeintrag. (https://www.delphipraxis.net/92015-problem-mit-bool-datenbankeintrag.html)

The_ New_Guy 13. Mai 2007 13:20

Datenbank: Paradox • Version: 7 • Zugriff über: Tquery,Ttable

Problem mit bool Datenbankeintrag.
 
Hi leute! Ich habe in Problem mit meiner datenbank - Ich möchte die checkbox.checked eigenschaft in meine datenbank bringen -

in etwa so:

Delphi-Quellcode:
query1.sql.clear;
query1.sql.add('insert into ***** (FELD) Values(' + quotedstr(booltostr(checkbox1.checked)) + ')';
leider funzt das mit dem booltostr nicht so .
das FELD in der datenbank läuft übrigens unter boolschen ausdruck.

delphi liefert mir auf diesen sql einen fehler :gruebel:

was kann ich tun?
danke schonmal im vorraus!

mkinzler 13. Mai 2007 13:25

Re: Problem mit bool Datenbankeintrag.
 
Verwende Parameter:
Delphi-Quellcode:
    sql.Text := 'insert into ***** (FELD) Values( :feld)';
    ParamByName('feld').Value := checkbox1.checked;

The_ New_Guy 13. Mai 2007 14:14

Re: Problem mit bool Datenbankeintrag.
 
er findet die parameter nicht - muss ich da noch irgendwas einstellen?

mkinzler 13. Mai 2007 14:15

Re: Problem mit bool Datenbankeintrag.
 
Delphi-Quellcode:
Query.ParamCheck := True;

The_ New_Guy 13. Mai 2007 14:20

Re: Problem mit bool Datenbankeintrag.
 
Delphi-Quellcode:
Query1.Active:=false;
  query1.SQL.Clear;

  // hier bei glanzahl kontrolle auf zahlen einführen + kontrolle auf datum

  query1.SQL.Add( 'INSERT into exceltabDatabase (AKZ, NACHNAME, VORNAME, '
                + 'Adresse, datum, GL, erfolg, abrechnung_erfasst, nur_beratung) VALUES('
                + quotedstr(edit1.Text)
                + ',' + quotedstr(edit2.text)
                + ',' + quotedstr(edit3.Text)
                + ',' + quotedstr(edit4.Text)
                + ',' + quotedstr(edit5.Text)
                + ',' + quotedstr(edit6.Text)
                + ':erfolg' + ':abrechnung_erfasst' + ':nur_beratung'
                + ')' );

  query1.ParamByName('erfolg').Value := checkbox1.checked;
  query1.ParamByName('abrechnung_erfasst').Value := checkbox2.checked;
  query1.ParamByName('nur_beratung').Value := checkbox3.checked;


  Query1.ParamCheck := True;

  query1.ExecSQL;
funzt leider nicht :(

mkinzler 13. Mai 2007 14:24

Re: Problem mit bool Datenbankeintrag.
 
Delphi-Quellcode:
query1.Paramcheck := True;
query1.SQL.text:= 'INSERT into exceltabDatabase (AKZ, NACHNAME, VORNAME, '
                + 'Adresse, datum, GL, erfolg, abrechnung_erfasst, nur_beratung) VALUES ('                      
                + ':adr, :datum, :gl, :erfolg, :ae, :nb);';
query1.ParamByName('adr').Value := ...

The_ New_Guy 13. Mai 2007 14:30

Re: Problem mit bool Datenbankeintrag.
 
ahhh ja habs kapiert! dankeschöööööööööööööööööööööön!!!!

danke für die geduld + anfängerhilfe

The_ New_Guy 13. Mai 2007 14:57

Re: Problem mit bool Datenbankeintrag.
 
Liste der Anhänge anzeigen (Anzahl: 1)
Delphi-Quellcode:
  Query1.ParamCheck := True;

  query1.SQL.Add( 'INSERT into exceltabDatabase (AKZ, NACHNAME, VORNAME, '
                + 'Adresse, datum, GL, erfolg, abrechnung_erfasst, nur_beratung)'
                + 'VALUES('
                + ':AKZ,:nachname,:vorname,:Adresse,:Datum,:gl,'
                + ':erfolg, :abrechnung_erfasst, :nur_beratung)'
                );

  query1.ParamByName('AKZ').AsString := edit1.Text;
  query1.ParamByName('nachname').AsString := edit2.text;
  query1.ParamByName('vorname').AsString := edit3.Text;
  query1.ParamByName('Adresse').AsString := edit4.Text;
  query1.ParamByName('Datum').AsDate := strtodate(edit5.Text);
  query1.ParamByName('gl').AsInteger := strtoint(edit6.Text);

  query1.ParamByName('erfolg').AsBoolean := checkbox1.checked;
  query1.ParamByName('abrechnung_erfasst').asboolean := checkbox2.checked;
  query1.ParamByName('nur_beratung').AsBoolean := checkbox3.checked;

  query1.ExecSQL;
darauf liefert er mir den errror(siehe bild)

mkinzler 13. Mai 2007 15:01

Re: Problem mit bool Datenbankeintrag.
 
Wenn die Typen übereinstimmen brauchst du nicht Casten sonder kannst .Value verwenden.

Das ist doppelt-gemoppelt:
Zitat:

Delphi-Quellcode:
query1.ParamByName('Datum').AsDate := strtodate(edit5.Text);

Besser:
Delphi-Quellcode:
query1.ParamByName('Datum').AsString := edit5.Text;

The_ New_Guy 13. Mai 2007 15:07

Re: Problem mit bool Datenbankeintrag.
 
Liste der Anhänge anzeigen (Anzahl: 1)
funktioniert leider nicht -
das feld in meiner paradox db ist übrigens vom typ datum(daher kann man dann doch kein asstring nehmen, oder?)

Delphi-Quellcode:
//...
              + ':AKZ,:nachname,:vorname,:Adresse,:Datum,:gl,'
                + ':erfolg, :abrechnung_erfasst, :nur_beratung)'
                );

  query1.ParamByName('AKZ').AsString := edit1.Text;
  query1.ParamByName('nachname').AsString := edit2.text;
  query1.ParamByName('vorname').AsString := edit3.Text;
  query1.ParamByName('Adresse').AsString := edit4.Text;
  query1.ParamByName('Datum').asstring := edit5.Text;
  query1.ParamByName('gl').AsInteg
//...


Alle Zeitangaben in WEZ +1. Es ist jetzt 08:56 Uhr.
Seite 1 von 2  1 2      

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz