В чем разница между SQL Latin1 General CP1 CI AS и SQL Latin1 General CP1 CI AI
Я получаю эту ошибку при запуске запроса обновления в Microsoft SQL Server
Не удается разрешить конфликт параметров сортировки между "SQL_Latin1_General_CP1_CI_AS" и "SQL_Latin1_General_CP1_CI_AI" в операции equal to.
запрос использует только 2 таблицы, таблицу, которую он обновляет, и временную таблицу, к которой он присоединяется, ни в одной таблице я не указал параметры сортировки, и они оба находятся в одной базе данных, что означает, что они должны иметь те же параметры сортировки, так как это должно быть базой данных по умолчанию один right
глядя на сортировки, единственное различие-последний символ, все, что я понимаю из последней части, это то, что CI означает нечувствительный к регистру. если бы я должен был сделать удар в темноте, я бы подумал, что AI означает автоматическое приращение, но я понятия не имею, что означает as
1 ответов
AI означает нечувствительный к акценту (т. е. определяет, если cafe = café).
Ключевое слово collate можно использовать для преобразования одного (или обоих) параметров сортировки значений.
См. ссылку для получения дополнительной информации:http://msdn.microsoft.com/en-us/library/aa258237 (v=sql.80).aspx
пример:
select * from r
left outer join hr on hr.name = r.name COLLATE SQL_Latin1_General_CP850_CI_AI