楼主: shiguibao

[笔记] chr(0)的陷阱

[复制链接]
论坛徽章:
0
11#
发表于 2007-1-18 11:37 | 只看该作者
我的9i也没有问题的

使用道具 举报

回复
论坛徽章:
85
2008新春纪念徽章
日期:2008-02-13 12:43:03双黄蛋
日期:2011-06-17 11:07:502011新春纪念徽章
日期:2011-02-18 11:42:472011新春纪念徽章
日期:2011-01-04 10:24:022010年世界杯参赛球队:荷兰
日期:2010-08-28 00:09:112010年世界杯参赛球队:科特迪瓦
日期:2010-03-02 12:36:542010新春纪念徽章
日期:2010-03-01 11:07:242010新春纪念徽章
日期:2010-03-01 11:07:242010新春纪念徽章
日期:2010-01-04 08:33:082010年世界杯参赛球队:意大利
日期:2009-12-31 14:41:24
12#
 楼主| 发表于 2007-1-18 11:46 | 只看该作者
最初由 翻口皮 发布
[B]请问一下,chr(0)是什么呀?它有什么特殊用途吗?为什么楼主会用到它呢? [/B]

因为看到一个问题有涉及到这个东东,就想测试一下,没想到还真测出一个pl/sql developer 的bug

使用道具 举报

回复
招聘 : Linux运维
论坛徽章:
235
紫蜘蛛
日期:2007-09-26 17:05:46玉兔
日期:2007-09-26 17:05:05现任管理团队成员
日期:2011-05-07 01:45:08玉兔
日期:2006-08-29 20:38:48紫蜘蛛
日期:2007-09-26 17:05:34阿斯顿马丁
日期:2013-11-19 10:38:16奔驰
日期:2013-10-16 09:08:58红旗
日期:2014-01-09 11:57:39路虎
日期:2013-08-13 14:52:35林肯
日期:2015-05-19 13:01:16
13#
发表于 2007-1-18 13:30 | 只看该作者

对阿,为什么这样的?

SQL> Select 'aaaaa'||Chr(0)||'bbbbb' From dual;

'AAAAA'||CHR(0)||'BBBBB'
------------------------
aaaaa

SQL>

使用道具 举报

回复
论坛徽章:
105
生肖徽章:鸡
日期:2006-12-02 12:25:43生肖徽章:鼠
日期:2007-02-10 06:34:13生肖徽章2007版:鸡
日期:2008-01-02 17:35:53生肖徽章2007版:鼠
日期:2008-01-02 17:35:53生肖徽章2007版:羊
日期:2009-03-10 21:21:58祖国60周年纪念徽章
日期:2009-10-09 08:28:00祖国60周年纪念徽章
日期:2009-10-09 08:28:00
14#
发表于 2007-1-18 13:58 | 只看该作者
SQL*Plus: Release 9.2.0.1.0 - Production on Thu Jan 18 13:56:26 2007

Copyright (c) 1982, 2002, Oracle Corporation.  All rights reserved.

SQL> conn / as sysdba
Connected to an idle instance.
SQL> startup
ORACLE instance started.

Total System Global Area  135338868 bytes
Fixed Size                   453492 bytes
Variable Size             109051904 bytes
Database Buffers           25165824 bytes
Redo Buffers                 667648 bytes
Database mounted.
Database opened.
SQL> select chr(0) from dual;

C
-


SQL> select a|| chr(0)||b from dual;
select a|| chr(0)||b from dual
                   *
ERROR at line 1:
ORA-00904: "B": invalid identifier


SQL> select a|| chr(0)|| b from dual;
select a|| chr(0)|| b from dual
                    *
ERROR at line 1:
ORA-00904: "B": invalid identifier


SQL> select a|| chr(0)|| 'b' from dual;
select a|| chr(0)|| 'b' from dual
       *
ERROR at line 1:
ORA-00904: "A": invalid identifier


SQL> select 'a'|| chr(0)|| 'b' from dual;

'A'
---
a b

SQL> select 'a'|| chr(0)||'b' from dual;

'A'
---
a b

SQL> select "a"|| chr(0)|"b" from dual;
select "a"|| chr(0)|"b" from dual
                   *
ERROR at line 1:
ORA-00996: the concatenate operator is ||, not |


SQL>

使用道具 举报

回复
论坛徽章:
0
15#
发表于 2007-1-18 20:33 | 只看该作者
哦!顶一下.

使用道具 举报

回复
论坛徽章:
0
16#
发表于 2007-1-18 22:29 | 只看该作者
好像是PLSQL developer的问题,在sqlplus里面结果是对的,在PLSQL DEVELOPER里面就象楼主说的那样

使用道具 举报

回复
论坛徽章:
0
17#
发表于 2007-1-19 00:17 | 只看该作者
我觉得应该中只pl/sql dev显示的问题,oracle应该是返回正确的值了,但是pl/sql  dev在显示oracle返回的字符串时出现了问题,要不然length也不会计算正确。

使用道具 举报

回复
论坛徽章:
484
ITPUB北京香山2007年会纪念徽章
日期:2007-01-24 14:35:02ITPUB北京九华山庄2008年会纪念徽章
日期:2008-01-21 16:50:24ITPUB北京2009年会纪念徽章
日期:2009-02-09 11:42:452010新春纪念徽章
日期:2010-03-01 11:04:552010数据库技术大会纪念徽章
日期:2010-05-13 10:04:272010系统架构师大会纪念
日期:2010-09-04 13:35:54ITPUB9周年纪念徽章
日期:2010-10-08 09:28:512011新春纪念徽章
日期:2011-02-18 11:43:32ITPUB十周年纪念徽章
日期:2011-11-01 16:19:412012新春纪念徽章
日期:2012-01-04 11:49:54
18#
发表于 2007-1-19 03:49 | 只看该作者
这个好像很早就讨论过了
和Oracle的版本有关

使用道具 举报

回复
论坛徽章:
1
ITPUB十周年纪念徽章
日期:2011-11-01 16:20:28
19#
发表于 2007-1-22 16:27 | 只看该作者
C语言中显示字符串是到chr(0)为止的~可能跟这有关~

使用道具 举报

回复
论坛徽章:
248
暖羊羊
日期:2015-03-12 16:37:41生肖徽章2007版:羊
日期:2009-11-26 17:08:40生肖徽章2007版:羊
日期:2009-11-26 17:08:40生肖徽章2007版:羊
日期:2009-11-25 17:03:53生肖徽章2007版:羊
日期:2009-11-23 16:38:59生肖徽章2007版:羊
日期:2009-11-23 16:38:59生肖徽章2007版:羊
日期:2009-11-20 16:11:59生肖徽章2007版:羊
日期:2009-11-20 16:11:59生肖徽章2007版:羊
日期:2009-11-20 16:11:59生肖徽章2007版:羊
日期:2009-11-18 16:41:41
20#
发表于 2007-1-22 16:31 | 只看该作者
我以前只在PLSQL DEVELOPER中使用过,没有得到正确的数据,就放弃了使用chr(0)的念头了。没想到可以用呀

使用道具 举报

回复

您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

TOP技术积分榜 社区积分榜 徽章 团队 统计 知识索引树 积分竞拍 文本模式 帮助
  ITPUB首页 | ITPUB论坛 | 数据库技术 | 企业信息化 | 开发技术 | 微软技术 | 软件工程与项目管理 | IBM技术园地 | 行业纵向讨论 | IT招聘 | IT文档
  ChinaUnix | ChinaUnix博客 | ChinaUnix论坛
CopyRight 1999-2011 itpub.net All Right Reserved. 北京盛拓优讯信息技术有限公司版权所有 联系我们 未成年人举报专区 
京ICP备16024965号-8  北京市公安局海淀分局网监中心备案编号:11010802021510 广播电视节目制作经营许可证:编号(京)字第1149号
  
快速回复 返回顶部 返回列表