Forum Delphi.cz

Delphi => FireDAC => Téma založeno: Stanislav Hruška 13-11-2016, 20:30:25

Název: FireDAC FB - update table. Hodnota null je 0
Přispěvatel: Stanislav Hruška 13-11-2016, 20:30:25
V tabuľke mám cudzí kľúč, kde je povolená hodnota null.
Kód: Text [Vybrat]
  1.   FHotDB.Table.Edit;
  2.   FHotDB.Table.FieldByName('FKBANKACCOUNTS').Value := null;
  3.   Result := FHotDB.PostRec;
  4.  
Mesage text: violation of FOREIGN KEY constraint "FK_CAANALYTIC_BANK" on table "CAANALYTIC"
Foreign key reference target does not exist
-------------------------------------------
Command text: UPDATE CAANALYTIC
SET CODE = :NEW_CODE, FKBANKACCOUNTS = :NEW_FKBANKACCOUNTS
WHERE IDCAANALYTIC = :OLD_IDCAANALYTIC
Command parameters:
  NEW_FKBANKACCOUNTS=0

Ešte sa mi to nestalo. Odkiaľ sa tam berie tá nula? V nastaveniach FDConnection, FDTransaction a FDTable som nič nanašiel.
Pri insert pomocou FDQuery nie je žiaden problém.
Název: Re:FireDAC FB - update table. Hodnota null je 0
Přispěvatel: Stanislav Hruška 13-11-2016, 21:03:18
Mám tam aj
Kód: Delphi [Vybrat]
  1. FHotDB.Table.FieldByName('FKFOCS').Value := null;
  2.  
Ale to sa mi v "Command text" neukáže.
Název: Re:FireDAC FB - update table. Hodnota null je 0
Přispěvatel: Stanislav Hruška 13-11-2016, 22:29:02
Tak už som to objavil. Mám funkciu na vracanie hodnoty TObject z TStrings. A ja som pri ItemIndex = -1 vracal 0 namiesto null