C# MS访问排序(比较字符串数据)
我有一个.NET应用程序,它使用MS Access作为数据库。 该应用程序工作正常,在我的电脑上仍然可以工作。但在客户端电脑上重新安装Windows后,该应用程序开始以一种非常奇怪的方式工作 数据库中的数据是西里尔语(马其顿语)。 问题是数据库没有对字符串进行正确排序 例如,如果我运行以下查询:C# MS访问排序(比较字符串数据),c#,.net,sorting,ms-access,oledb,C#,.net,Sorting,Ms Access,Oledb,我有一个.NET应用程序,它使用MS Access作为数据库。 该应用程序工作正常,在我的电脑上仍然可以工作。但在客户端电脑上重新安装Windows后,该应用程序开始以一种非常奇怪的方式工作 数据库中的数据是西里尔语(马其顿语)。 问题是数据库没有对字符串进行正确排序 例如,如果我运行以下查询: SELECT * FROM exampletbl ORDER BY title 预期结果应为: id title 1 Александар 2 Бранко 3 Влатко 4 Г
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 Дарко
我的猜测是,在客户端PC上没有正确配置区域设置或OLE DB驱动程序,access将数据排序为拉丁字母
p、 客户端windows版本为windows 7 x86要更改排序顺序(在新数据库上),请转到文件>选项>常规>创建数据库>新数据库排序顺序
这会给你
要使更改在当前数据库中生效,请执行压缩和修复。这将在后台创建一个新数据库(感谢Gord Thompson的建议)您能设置access表的排序规则吗?我知道如何设置MySQL的排序规则,但我在MS access方面没有丰富的经验,也不知道如何设置排序规则。“我还不确定如何为现有数据库更改它。”-执行压缩和修复数据库将实现更改,因为它会在此过程中创建一个“新数据库”。@GordThompson噢,太好了!这很有道理,谢谢你,你救了我一天,问题解决了:)