MS Access 排序(比较字符串数据)
Posted
技术标签:
【中文标题】MS Access 排序(比较字符串数据)【英文标题】:MS Access sort (comparing string data) 【发布时间】:2015-04-02 20:10:57 【问题描述】:我有一个使用 MS Access 作为数据库的 .NET 应用程序。 该应用程序运行良好,并且仍然可以在我的 PC 上运行。但是在客户端 PC 上重新安装 Windows 后,应用程序开始以一种非常奇怪的方式工作。
数据库中的数据是西里尔文(马其顿文)。 问题是数据库没有正确排序字符串。
例如,如果我运行以下查询:
SELECT * FROM exampletbl ORDER BY title
预期的结果应该是:
id title
1 Александар
2 Бранко
3 Влатко
4 Гоце
5 Гвозден
6 Дарко
7 Ѓоре
8 Ѓурѓа
...
目前它的访问方式是这样排序的:
id title
1 Александар
2 Бранко
3 Влатко
4 Гоце
5 Ѓоре
6 Гвозден
7 Ѓурѓа
8 Дарко
...
我的猜测是区域设置或 OLE DB 驱动程序没有在客户端 PC 上正确配置,并且访问将数据排序为拉丁字母。
附言客户端windows版本是Windows 7 x86
【问题讨论】:
可以设置访问表的排序规则吗? 我知道如何在 mysql 上设置排序规则,但我在 MS Access 方面没有丰富的经验,也不知道如何设置排序规则。 【参考方案1】:要更改排序顺序(在新数据库上),请转到文件 > 选项 > 常规 > 创建数据库> 新数据库排序顺序。
这会给你
要使该更改在当前数据库中生效,请执行压缩和修复。这将在后台创建一个新数据库(感谢 Gord Thompson 的建议)
【讨论】:
“我还不确定如何为现有数据库更改它。” - 执行压缩和修复数据库将实施更改,因为它会创建一个“新数据库” ” 在这个过程中。 @GordThompson 哦,太好了!这是有道理的 非常感谢,你救了我的命,问题解决了 :)以上是关于MS Access 排序(比较字符串数据)的主要内容,如果未能解决你的问题,请参考以下文章
JET OLEDB 参数如何将字符串与 Access DB 中的文本字段进行比较
MS Access 2003 - 排序列表框的字符串值不是按字母顺序