У меня есть таблица Oracle со следующими столбцами:
ID
FUNCTION_ID
FUNCTION_ROLE
Столбец идентификатора уникален (последовательность), но я также хочу, чтобы обе комбинации (FUNCTION_ID, FUNCTION_ROLE) также были уникальными.
Мой запрос, тем не менее, так как FUNCTION_ROLE является строкой, а значение может быть в смешанном регистре, что является лучшим подходом для предотвращения этого, то есть:
Data for this table:
Row 1: 1,1,TEST1
Row 2: 2,1,Test1
Я ожидал бы получитьуникальное нарушение ограничения при попытке вставить строку 2, так как 'Test1' совпадает с 'TEST1' - только случай отличается.
Как я могу предотвратить это, как я думал, создавая еще один столбец с именем FUNCTION_ROLE_UPPERи использование этого столбца вместе с FUNCTION_ID для проверки уникальности - будет ли это правильным подходом?
Спасибо.