1
|
Nick Pierpoint · 技术社区 · 15 年前 |
1
1
当然,如果你能很好地解决问题,一开始就不要雄心勃勃,这并不难。
本质上,您需要两个函数:一个用于解析
前者可以变得相当复杂;如果只给你‘en’,你可能想生成‘en-us’,你需要处理在没有完全匹配的情况下选择多个选项中的一个,你需要处理格式错误的头值,等等。不要试图一次性解决这一切:先做一些非常简单的事情,然后再进行扩展。
另一半的情况也差不多,产生了
在这种情况下,真正使您的编程经验成败的是您的单元测试。这是单元测试和测试驱动开发的理想问题。单元测试将确保当您改变事情时,旧的功能将继续工作,并使添加新功能和修复bug变得更容易,因为您只需添加另一个测试,就可以从这一点开始指导您。(如果您发现在某个时刻出现了严重错误,您也会发现对其中一个函数进行完全重写更容易,因为您可以轻松地确认新版本没有破坏任何东西。) 在您的环境中如何进行单元测试可能有点超出了这个问题的范围,但是让我添加一些提示。首先,如果有一个单元测试框架(“pl-sql-unit?”)适合你的环境,太好了。如果没有,不要惊慌。您不需要任何复杂的东西:只需要一组输入和预期的输出,以及一种通过函数运行它们的方法,或者说“一切正常!”或显示任何不正确的结果。您可能可以编写一个简单的pl/sql函数,它从表中读取输入和预期输出,并为您这样做。 |
2
1
最后偶然发现了答案。Oracle软件包utl_i18n包含从浏览器语言代码映射到Oracle NLS设置的功能:
映射似乎不能很好地处理多语言设置,例如en-us、en;q=0.5,但只要使用前5个字符,函数就可以正常工作。
|
maddy · 如何根据oracle SQL中的某一列值进行排名 1 年前 |
kiric8494 · 显示以元音开头和结尾的城市名称 2 年前 |
Franz Biberkopf · Oracle:组合子查询和聚合函数 2 年前 |
BitLauncher · 甲骨文-如何模拟位列和布尔和/或? 2 年前 |
Arifullah · 如何从oracle中的列中删除特定的初始字符? 2 年前 |
Anar · Oracle SQL用户定义函数 2 年前 |
user1312312 · 如何为一组表编写通用触发器? 2 年前 |