Задать вопрос
Ответы пользователя по тегу SQL
  • Может ли кто-нибудь объяснить суть паттерна проектирования "One True Lookup Table"?

    @AdvanTiSS
    Это не паттерн а антипаттерн. Заключается в том, что новички зачастую используют одну универсальную таблицу для хранения сущностей разных типов.

    Идея: вместо использования трех лукап таблиц
    create table order_status (status_code varchar2(10), status_desc varchar2(40) );
    create table country (country_code varchar2(3), country_name varchar2(30) );
    create table priority (priority_no number(1), priority_desc varchar2(40) );


    Почему бы не использовать одну таблицу в виде
    create table lookup (
    lookup_type varchar2(10), 
    lookup_code varchar2(20), 
    lookup_desc varchar2(100) );

    Подробности тут tonyandrews.blogspot.cz/2004/10/otlt-and-eav-two-b...
    Учите английский, без него туго будет.
    Ответ написан
    Комментировать
  • Про транзакции в SQL?

    @AdvanTiSS
    Различные клиенты могут получить одну и ту же строку пока вы не наложите exclusive lock на строку в первом запросе.
    Это можно сделать посредством хинта WITH (UPDLOCK)
    Строка будет заблокирована до коммита или отката транзакции, при этом транзакция вероятней всего будет блокировать другие, поскольку первый SELECT не использует индексов.
    Ответ написан
    Комментировать
  • Как хранить пути картинок?

    @AdvanTiSS
    две таблицы
    FILE (id, file_name, file_path_id)
    FILE_PATH (id, file_path)
    Ответ написан
    Комментировать
  • Объединение. Как правильно оформить таблицу?

    @AdvanTiSS
    Рекомендую для оптимизации создать таблицы групп счетов
    c_GROUP(id, description)
    и элементов групп
    с_GROUP_ITEM(c_GROUP_id, c_NUM)

    Наполняем таблицы всевозможными комбинациями групп и получаем красивые и оптимизированные запросы.
    Плюс вы получаете большую гибкость построения запроса клиентом.
    Ответ написан
    Комментировать