Autor Téma: FireDAC FB - update table. Hodnota null je 0  (Přečteno 458 krát)

Offline Stanislav Hruška

  • Padawan
  • ******
  • Příspěvků: 2870
  • Karma: 27
    • Verze Delphi: XE7 professional
FireDAC FB - update table. Hodnota null je 0
« kdy: 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.
« Poslední změna: 13-11-2016, 20:56:00 od Stanislav Hruška »
Delphi XE7, FireBird
Expert na kladenie nejasne formulovaných otázok.

Offline Stanislav Hruška

  • Padawan
  • ******
  • Příspěvků: 2870
  • Karma: 27
    • Verze Delphi: XE7 professional
Re:FireDAC FB - update table. Hodnota null je 0
« Odpověď #1 kdy: 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.
Delphi XE7, FireBird
Expert na kladenie nejasne formulovaných otázok.

Offline Stanislav Hruška

  • Padawan
  • ******
  • Příspěvků: 2870
  • Karma: 27
    • Verze Delphi: XE7 professional
Re:FireDAC FB - update table. Hodnota null je 0
« Odpověď #2 kdy: 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
Delphi XE7, FireBird
Expert na kladenie nejasne formulovaných otázok.

 

S rychlou odpovědí můžete používat BB kódy a emotikony jako v běžném okně pro odpověď, ale daleko rychleji.

Upozornění: do tohoto tématu bylo naposledy přispěno před 120 dny.
Zvažte prosím založení nového tématu.

Jméno: E-mail:
Ověření:
Datový typ v Delphi, který má True a False: