SELECT RDB$USER AS USER_NAME,
RDB$GRANTOR AS GRANTOR_NAME,
(CASE RDB$PRIVILEGE
WHEN 'S' THEN 'SELECT'
WHEN 'U' THEN 'UPDATE'
WHEN 'D' THEN 'DELETE'
WHEN 'I' THEN 'INSERT'
WHEN 'R' THEN 'REFERENCE'
WHEN 'X' THEN 'EXECUTE' END) AS PRIVILEGE,
RDB$GRANT_OPTION AS GRANT_OPTION,
RDB$RELATION_NAME AS TABLE_NAME,
RDB$FIELD_NAME AS FIELD_NAME,
RDB$USER_TYPE AS USER_TYPE,
RDB$OBJECT_TYPE AS OBJECT_TYPE
FROM RDB$USER_PRIVILEGES
WHERE RDB$USER = :USER_NAME
ORDER BY RDB$USER, RDB$RELATION_NAME