Я работал над приложением, которое включает в себя базу данных с чисто натуральными ключами (то есть «кодами»), которые должны быть чувствительными к регистру, но не обязательно так.
Многие данные будут поступать из базы данных в хранимых процессах (с базой данных выполняется соединение), где чувствительность к регистру не является проблемой. Однако некоторые данные должны поступать из базы данных в виде отдельных запросов, а затем «сшиваться» в циклы - в основном из-за сложного типа данных, с которым SQL не может легко работать - и именно здесь возникла проблема. Когда я перебираю два набора результатов и пытаюсь объединить «код», значения Productcode
и ProductCode
естественно не совпадают.
Вместо того, чтобы исправлять данные, мне пришлось изменить свой код (C #), чтобы выполнить сопоставление строк без учета регистра. Заметьте, не во всем решении, а только при просмотре этих «кодов» на предмет соответствия.
Если бы у меня была чувствительная к регистру база данных, у меня был бы более аккуратный код.
Теперь, вместо того, чтобы «почему учитывается регистр», я действительно хотел бы знать, почему вы хотите базу данных без учета регистра. Это из-за лени? Я не вижу веской причины, по которой базы данных нечувствительны к регистру.