Einzelnen Beitrag anzeigen

Benutzerbild von user0815
user0815

Registriert seit: 5. Okt 2007
331 Beiträge
 
Delphi XE2 Professional
 
#26

AW: FireDAC erkennt Boolean schreibt jedoch T/F anstelle von J/N

  Alt 5. Nov 2014, 12:13
Ich würde immer noch den Kram auf Integer umswitchen:

Code:
CREATE TABLE TEST (
  NR INTEGER NOT NULL,
  WERT INTEGER DEFAULT 0,,
 CONSTRAINT PK_TEST PRIMARY KEY (NR)
);
Delphi-Quellcode:
const
  BooleanToInteger : Array[Boolean] of Integer = (0, 1); // 0=False, <> 0 somit True

...
        SQL.Add('INSERT INTO TEST');
        SQL.Add('(NR, WERT)');
        SQL.Add('VALUES');
        SQL.Add('(:NR, :WERT);');
        ParamCheck := True;
        ParamByName('NR').AsInteger := 1;
        ParamByName('WERT').AsInteger := BooleanToInteger[True];
      
var
  OK : Boolean;
begin
...
  OK := FieldByName('WERT').AsInteger <> 0;
Abfrage & Anzeige

Code:
SELECT NR,
       CASE WERT
            WHEN 0 then 'False'
            WHEN 1 then 'True'
            ELSE 'Unknown'
       end AS WERT
FROM Test;
  Mit Zitat antworten Zitat