Hallo,
die untenstehende Funktion ermittelt den Domain-Namen eines Feldes.
Jetzt will ich wissen, ob eine Domain bereits in der
DB ist,
ABER keinem Tabellen-Feld zugeordnet ist !!!
Ich finde aber nicht die Systemtabelle, wo die Domains drinstehen ...
Weiss die einer ?
Danke
Erledigt
select * from rdb$fields where not (rdb$field_name like 'RDB$%')
Heiko
Delphi-Quellcode:
function GetDomainName(Q:TQuery;
const theTableName,
theFieldName:
String):
String;
begin
Result:= '
';
try
with Q
do
begin
SQL.Clear;
SQL.Add('
Select rdb$field_source,rdb$field_name');
SQL.Add('
From rdb$relation_fields');
SQL.Add('
Where (rdb$relation_name=:TableName) And (rdb$field_name=:FieldName)');
ParamByName('
TableName').AsString:= UpperCase(theTableName);
ParamByName('
FieldName').AsString:= UpperCase(theFieldName);
Open;
try
Result:= FieldByName('
rdb$field_source').AsString;
finally
Close;
end;
end;
except
end;
end;