В нескольких словах фокус такой: делаем отдельную таблицу для полей, на которые хотим делать ограничения и вешаем триггеры дублирующие в неё соответствующие поля и удаляющие записи в случае удаления в исходной таблице. Ценой небольшой потери производительности получаем работающий Unique Constraint и Primary Key, соответственно на неё и ссылки Foreign Key можно делать. Ну и недостаток этого решения, который стоит держать в уме — эта таблица может стать «бутылочным горлышком» и обычно это шаг назад, если inheritance делался ради партиционирования. Отчасти это решается распределением уникальных полей по нескольким таблицам.
Значительно больший смысл может быть для различных «вспомогательных» сервисов, которым также важно определить язык, на котором выводить свои сообщения. Те же «социальные кнопки» или контекстная реклама какая-нибудь.
Написано
Войдите на сайт
Чтобы задать вопрос и получить на него квалифицированный ответ.
Основные поддерживаемые базы работают с пулом r2d2 - можно там посмотреть, что есть.