1

在我的 Java 应用程序中,它需要在服务器启动时确定底层 Sybase db 是区分大小写还是不区分大小写并相应地配置属性,有没有合适的方法来做到这一点?

4

2 回答 2

2

如果select if 'A' = 'a' then 0 else 1 endif返回 1,则数据库区分大小写。

于 2013-09-05T17:03:34.563 回答
0

区分大小写由服务器的字符集和排序顺序指示。

您可以从 master..syscurconfigs 中提取排序顺序和字符集

select value from master..syscurconfigs where config = 132  #Gives you Sort Order ID
select value from master..syscurconfigs where config =      #Gives you Character Set ID

获得这两个值后,您可以提取排序顺序的名称:

select name from master..syscharsets where id = SortOrderID and csid = CharSetID

如果名称包括nocase(英语集)或nocs(非英语集),则不区分大小写。

*我知道我在第二个查询中遗漏了一个值,但我会在明天回到我的笔记时填写它

于 2013-09-06T02:01:39.037 回答