oracle认证辅导:查找乱码字符串的SQLOracle认证考试

文章作者 100test 发表时间 2009:09:09 18:37:03
来源 100Test.Com百考试题网


"tb42" class="mar10">   昨天系统导数据库,一不小心把nls_language设错了,结果导出来的函数和过程里面的中文字符串中的字符都变成问号了(?)。
  结果业务部门报告,好多报表里面的内容都变成问号了,这下麻烦了。
  首要问题,是要把有这种问题的函数和过程找出来,但是系统中的函数和过程有好多啊,将近一千个,有人说要大家每个人分几个,用眼睛看,那可不行啊,会累死人的,哈哈。
  想想办法吧,记得Oracle的函数和过程每行的文本都是存在一个系统表中的,而且,有问题的函数和过程会有一个特点,就是里面的字符串都变成了???的形式,只不过里面的问号的数量不一定。
  那种形式正好可以让正则表达式发挥作用,而且还记得Oracle提供了正则表达式的函数呢。
  确定了方向之后,说干就干,查了一下资料,所有的函数和过程都存储在User_Source这个表中。而Oracle还提供了REGEXP_Like函数。
  于是就有了下面的SQL:
  0select distinct name, type from user_source where REGEXP_LIKE(text, \?{1,1000})
  一下子就把有问题的函数和过程名都找出来了。哈哈,省了不少功夫啊。
  总结一下,遇到问题的时候不要着急,不能依赖手工的工作。Oracle中的系统表和内置函数功能很强大,要充分利用。

  编辑特别推荐:

  oracle认证考试费用

  Oracle的入门心得

  使用Oracle外部表的五个限制

  Oracle服务器参数文件维护的四个技巧



相关文章


Oracle数据库并行处理技术详解Oracle认证考试
大型应用面临数据库架构危机Oracle认证考试
解决DB2数据库备份参数修改后的报错问题Oracle认证考试
OracleSpool的用法小结Oracle认证考试
oracle认证辅导:查找乱码字符串的SQLOracle认证考试
Oracle里表空间的压缩Oracle认证考试
ORACLE导入时遇到的IMP00032错误Oracle认证考试
Oracle拆分字符串函数Oracle认证考试
Oracle在Windows操作系统上服务解析Oracle认证考试
澳大利亚华人论坛
考好网
日本华人论坛
华人移民留学论坛
英国华人论坛