Расшифровка ссылок в справочник - как лучше сделать?
Добавлено: 13 янв 2008, 15:42
До сих пор ссылки в справочник я обрабатывал одним и тем же способом. Если в таблице есть колонка ссылок, то в запросе делается присоединение справочника и добавляется колонка расшифровок.
Здесь поле TYPE - ссылка в справочник TYPES, добавляется поле TYPENAME - расшифровка.
Недавно я начал прокручивать такую мысль: а не создаёт ли такой "прямолинейный" способ расшифровки лишнего трафика? Если в справочнике мало записей, но расшифровки длинные, а запрос выбирает много записей - это ж получается раздувание данных.
Не лучше ли перенести расшифровку на клиент? То есть, перекачать справочники заранее, а затем выполнять расшифровку при отображении данных.
Приходит в голову, как это можно было бы сделать. Например, сделать вычислимое поле TYPENAME в датасете, а в обработчике вычисления заглядывать в справочник.
Делал ли это кто-нибудь? Как это лучше сделать? Можно ли задействовать ClientDataSet для хранения справочника? У кого есть практика, раскажите пожалуйста.
Код: Выделить всё
SELECT T.TYPE, TYPES.TYPENAME
FROM TABLE T, TYPES
WHERE T.TYPE=TYPES.ID
Недавно я начал прокручивать такую мысль: а не создаёт ли такой "прямолинейный" способ расшифровки лишнего трафика? Если в справочнике мало записей, но расшифровки длинные, а запрос выбирает много записей - это ж получается раздувание данных.
Не лучше ли перенести расшифровку на клиент? То есть, перекачать справочники заранее, а затем выполнять расшифровку при отображении данных.
Приходит в голову, как это можно было бы сделать. Например, сделать вычислимое поле TYPENAME в датасете, а в обработчике вычисления заглядывать в справочник.
Делал ли это кто-нибудь? Как это лучше сделать? Можно ли задействовать ClientDataSet для хранения справочника? У кого есть практика, раскажите пожалуйста.