2013-12-12 3 views
0

Oracle 11gR1Oracle 11gR1 - случай insenstive столбцы

Есть ли способ, чтобы установить экземпляр Oracle рассматривать все столбцы как прописную, т.е. сделать экземпляр Oracle нечувствителен к регистру при доступе к базе данных с именами столбцов регистрозависимыми?

+0

По умолчанию не является регистрозависимым от Oracle? – Mihai

+0

Ниже будут созданы два столбца в таблице с именем «employee», один верхний и нижний. Я хочу предотвратить это. create table employee (emp_name varchar2 (20), "emp_name" varchar2 (20)); – tale852150

ответ

1

Oracle по умолчанию не учитывает регистр. У вас были бы только идентификаторы, чувствительные к регистру, если первоначальный разработчик намеренно создал их таким образом. Если это то, что было сделано, у вас не было бы другого выбора, кроме как использовать имена, чувствительные к регистру, при взаимодействии с базой данных (одна из причин, почему не учитываются чувствительные к регистру идентификаторы).

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

+0

Спасибо. Это проблема, с которой я столкнулся - исходные системные таблицы с именами в нижнем и верхнем регистре, но, в зависимости от исходной системы, имена столбцов могут быть либо в нижнем, либо в верхнем регистре. Со стороны исходной системы нет согласованности. – tale852150

Смежные вопросы