SQL Server дело / проблема сопоставления - PullRequest
6 голосов
/ 26 августа 2011

У меня сегодня была странная ситуация в базе данных клиентов.SQL Server 2005, сортировка базы данных нечувствительна к регистру, поэтому я могу писать SQL-запросы, используя любой случай, без каких-либо проблем ... кроме одного.Один конкретный столбец в одной конкретной таблице называется «DeadZone».Если я запрашиваю, как это: «выберите Deadzone from TableName» - я получаю ошибку столбца не найден, как это: «выберите DeadZone из TableName» - это работает.Теперь кикер, как это: «выберите deadZone from TableName» - это работает!

Так что только «Z» в имени столбца чувствительна к регистру!Я создал аналогичное имя столбца в той же таблице, с буквой «Z», и в этом столбце не учитывается регистр.

Есть идеи?Я уверен, что смогу обойти это, возможно, удалив и повторно добавив столбец, но было бы хорошо, чтобы добраться до сути этого.Кстати, база данных находится на ПК в Венгрии, так возможно ли, что это вызвано некоторыми проблемами, характерными для венгерских персонажей?Помните, что имя другого столбца с буквой «Z» не имело той же проблемы.

-Graeme

1 Ответ

6 голосов
/ 26 августа 2011

Что такое точное сопоставление? Венгерский язык имеет специальную букву Dz , которая может отличаться от D - поэтому ваша проблема может быть на самом деле d, а не z.

Deadzone is [D][e][a][dz][o][n][e]
DeadZone is [D][e][a][d][Z][o][n][e]
deadZone is [d][e][a][d][Z][o][n][e]

Я бы проголосовал за тебя +1000 за самое странное, что я видел в этом месяце, если бы мог.

См. Связанную проблему с LY: http://www.sqlservercentral.com/Forums/Topic19439-9-1.aspx

И я не думаю, что удаление и повторное добавление вашей колонки поможет. Возможно, вам следует использовать только настоящие венгерские имена столбцов, если вы собираетесь использовать сопоставление венгерских баз данных!

...