Поддержка одного набора объектов для поддержки нескольких поставщиков баз данных (MS SQL, ORACLE и т. Д.)
Я проектирую структуру базы данных (абстрактный внутренний слой). Я должен выполнить следующие требования.
1) Может использоваться для настройки с несколькими поставщиками баз данных (MS SQL, ORACLE)
2) Не может поддерживать несколько наборов объектов (хранимых процедур, представлений, функций) в соответствии с поставщиками базы данных (ms sql, oracle, my sql)
У меня есть опыт разработки абстрактного слоя базы данных для поддержки нескольких поставщиков баз данных путем изменения файлов конфигурации.
Но мне приходилось каждый раз поддерживать разные наборы объектов (sp,views), по словам поставщика базы данных.
Сейчас ситуация иная, я думаю, нестандартный способ реализации текущего сценария. Если кто-то может дать хорошее предложение, которое будет действительно оценено.
Заранее спасибо,
1 ответ
Ваш вопрос по сути слишком широк для Stackru, но я рекомендую придерживаться базового ANSI SQL, просто выберите / обновить / вставить / удалить. Даже не создавать заявления или лимит / верх и т. Д. В конце концов, возможно.
Вам нужно только взглянуть на огромное количество различных библиотек ORM, чтобы понять, что эту проблему нелегко решить определенным образом, и нет волшебной пули или революционного мышления, которые бы сделали это так. Если бы это было, кто-то другой сделал бы это - нет, у них просто были команды людей, которые писали огромные библиотеки, чтобы справиться с очень разнообразной задачей.