0

我们有数百个需要支持本地化的 Web 应用程序。我们的后端是 Asp.net Web API 与旧版 DB2 for IBM i 的组合。

为了从 C# 连接到 DB2,我们使用 IBM Data Server Client 10.5 FP5 包 -> 托管的 .Net 驱动程序。

使用来自 Client Access for System i-package 的本机 .Net 驱动程序,支持将附加关键字(SortSequence/Language)与 ConnectionString 一起传递。

提出了与 IBM.DATA.DB2-drivers 特性请求类似的功能,但似乎没有商业理由,因为它似乎根本没有进展。

https://www.ibm.com/developerworks/rfe/execute?use_case=viewRfe&CR_ID=56495

有谁知道将文化信息选择与其他数据库连接信息一起传递给 DB2 for IBM i 的任何其他方法?(工作描述,db2dsdriver.cfg,db2cli.ini)

兄弟,卡帕斯

4

1 回答 1

0

尽管似乎所有其他驱动程序都支持排序规则参数,包括 Java Toolbox,但我都没有发现。

我使用的解决方法是根据排序顺序的语言规范设置用于连接池的用户配置文件。

在我们的例子中,对于法裔加拿大人,以下 USRPRF 值为 SRTSEQ(*LANGIDSHR) LANG(FRC)

*LANGIDSHR 在 DB 世界中表示不区分大小写、不区分重音。此参数的默认值为 *HEX,通常通过 *SYSVAL QSRTSEQ 设置。您可能还希望更改 *LANGIDSHR 的 SYSVAL,但我并没有真正尝试对遗留应用程序的影响。

您不能以编程方式使用排序规则,但仍然可以创建尽可能多的用户,您需要不同的排序规则并在它们之间切换。

大警告:如果您创建索引以加快访问速度,则必须注意索引创建会根据索引 Creator 用户的实际排序规则做出反应。如果 DBA 用户配置文件显示 SRTSEQ *HEX(默认值),则您的索引将创建为 SRTSEQ *HEX,并且不能由在 SRTSEQ *LANGIDSHR 中建立的连接使用。我们花了很长时间才弄清楚为什么我们的索引有时会被使用,有时不会。在过渡期间,我们最终在 *HEX 和 *LANGIDSHR 中创建了索引,直到每个人都设置为 *LANGIDSHR。任何逻辑文件、索引或视图的排序序列都可以在 DSPFD 中轻松找到,搜索 SRTSEQ 属性。

于 2016-01-17T14:16:07.230 回答