if not aQuery.Eof then Result := aQuery.FieldByName(Column_name).AsString;
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre questioncdFirebird : begin aQuery.SQL.Add('Select t1.RDB$INDEX_NAME as column_name'); aQuery.SQL.Add('From RDB$INDICES t1'); aQuery.SQL.Add('Inner join RDB$RELATION_CONSTRAINTS t2'); aQuery.SQL.Add('on (t1.RDB$RELATION_NAME = t2.RDB$RELATION_NAME AND t1.RDB$INDEX_NAME = t2.RDB$INDEX_NAME)'); aQuery.SQL.Add('Where t1.RDB$RELATION_NAME = '+ cyDBX.BackQuotedStr(aTableName)); aQuery.SQL.Add('and t2.RDB$CONSTRAINT_TYPE = ''PRIMARY KEY'''); end;
Select t1.RDB$FIELD_NAME as column_name From RDB$INDEX_SEGMENTS t1 Inner Join RDB$INDICES t2 On t1.RDB$INDEX_NAME = t2.RDB$INDEX_NAME Inner join RDB$RELATION_CONSTRAINTS t3 on (t2.RDB$RELATION_NAME = t3.RDB$RELATION_NAME AND t2.RDB$INDEX_NAME = t3.RDB$INDEX_NAME) Where t2.RDB$RELATION_NAME = :P_TableName and t3.RDB$CONSTRAINT_TYPE = 'PRIMARY KEY' ORDER BY t1.RDB$FIELD_POSITION