В дополнение к комментариям ORM; иногда жизнь не так проста.
Вы должны хранить отдельные сценарии для генерации таблиц, представлений и хранимых процедур в обеих системах, поскольку они будут различаться.
Вам может потребоваться сделать что-то сложное из соображений производительности, специфичное для одной платформы базы данных. Например, создание нового раздела в Oracle.
Вы должны попытаться сделать это на этом уровне, заключив его в представление или хранимую процедуру.
Ваш клиентский код может вызывать хранимую процедуру с такой же подписью в любой базе данных. Вы можете написать хранимую процедуру, которая ничего не делает или делает много, в зависимости от того, что требуется для этой базы данных.