Einzelnen Beitrag anzeigen

Int3g3r

Registriert seit: 28. Nov 2018
Ort: Schweiz
118 Beiträge
 
Delphi 10.3 Rio
 
#26

AW: IBDAC Leerstring statt Null. Alternativen?

  Alt 3. Okt 2019, 09:42
Ich versuche nun gerade auf der Datenbankseite dies zu realisieren.
Mir ist folgendes Beispiel zu umständlich, ich möchte nicht jedes Feld manuell im Trigger eintragen müssen:

SQL-Code:
SET TERM ^^ ;
CREATE TRIGGER <TABELLE>_BI FOR <TABELLE> ACTIVE BEFORE INSERT or UPDATE POSITION 0 AS
begin
  if ( new.<Feld> = '') then new.<Feld> = NULL;
end ^^
SET TERM ; ^^
Momentan habe ich im IBExpert einen "Parsing Error" den ich nicht weg bekomme.
Ich möchte das er automatisch die Felder der Tabelle holt und alle kontrolliert:

SQL-Code:
CREATE OR ALTER trigger "_TBTEST_BI0" for "_TBTEST"
active before insert position 0
AS
    declare variable field_name varchar(255);
begin
    for select rdb$field_name from rdb$relation_fields where rdb$relation_name=upper('_TBTEST') into :field_name
  do
  begin
    if (new.:field_name = '') then new.:field_name = NULL; --new.:field_name (Parsing error!)
  end
end
Gruss Int3g3r
  Mit Zitat antworten Zitat