sql-server - 表名中字母大小写导致的“无效对象名”错误
问题描述
这是一个非常奇怪的问题。我有一个完全命名为“UncSetup”的表。该数据库附加到 SQL Server 2012 express 实例并在 SSMS 中访问。
我可以执行这个查询:
SELECT * FROM UNcSEtUp
但不是这个:
SELECT *FROM UnCSetup
给出“无效的对象名称”错误。
这与 SSMS 中的 IntelliSense 无关。执行结果错误。
我有许多其他数据库具有完全相同的表模式,其中表名的所有变体都可以正确执行。所以我的猜测是这个数据库以某种方式损坏了。我能做些什么来修复这个数据库?
解决方案
@Damien_The_Unbeliever 和 @Jeroen Mostert 在评论中回答了这个问题。数据库的排序规则是 Hungarian_CI_AS,其中“Cs”是一个字母而不是两个字母。https://en.wikipedia.org/wiki/Hungarian_alphabet
推荐阅读
- html - 在没有 Flash 的 html 中添加 youtube 视频
- php - 在php中解析坐标数据并避免致命的内存错误
- javascript - 30 秒后重新加载多个 iframe
- c# - 如何提供一个接口来检索和更新键、值?
- bixby - Bixby NL 和具有枚举类型的对话驱动程序
- java - java.lang.NoClassDefFoundError:无法初始化类 com.google.gdata.client.contacts.ContactsService
- kotlin - 生成的 setter 与接口方法冲突
- python - 数独求解器中未定义全局名称 checkRows
- java - 404 Not Found 的假装和未声明的可抛出异常
- html - 固定添加位置时页脚消失