ORACLE 数据库产生不可见字符的原因是什么

merrill 2011-03-25 06:01:01
如题。

数据入库这个原因的请详细解释下。
其他的原因的 请大家指点下。

谢谢
...全文
342 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
iqlife 2011-03-26
  • 打赏
  • 举报
回复
你是数据是怎么录入的,一般这种问题是由于字符集,或者是复制黏贴造成的,反正肯定是数据来源有问题,仔细检查你的数据来源
merrill 2011-03-26
  • 打赏
  • 举报
回复
我传入的参数字符串是'001001' 解析后存在库里面的也是'001001'(肉眼看)
但是我要查询 '001001%'的数据,却查不出来任何数据,可是数据源是存在这类数据的 。
所以我就怀疑是不可见字符
于是我就开始分析
传入前我做的分析
select dump('001001'),lengthb('001001') from dual;
1 Typ=96 Len=6: 48,48,49,48,48,49 6
传入后我做的分析
我先查询数据
select t.orgaid from t_rpttmp_dept t;
001001
select dump(t.orgaid),lengthb(t.orgaid) from temp t;
1 Typ=1 Len=7: 48,48,49,48,48,49,28 7
可以看出来存在不可见字符
问题找到了 也解决了
解决方法:select replace('str',chr(28)) from dual;
但是我想知道为什么产生不可见字符以及那些情况会产生不可见字符。 谢谢
iqlife 2011-03-26
  • 打赏
  • 举报
回复
是不是回车?不过回车再DUMP下也是可以看出来的啊,

不可见你怎么知道有字符?

操作代码和检查过程代码上来分析下
merrill 2011-03-26
  • 打赏
  • 举报
回复
不是DATE类型 是 VARCHAR2类型
有人知道吗
merrill 2011-03-26
  • 打赏
  • 举报
回复
我都是手工输入的
不是粘贴复制
我在研究 研究 谢谢啦
Music杰 2011-03-25
  • 打赏
  • 举报
回复
是不是产生了乱码,或date类型的默认值啊?
merrill 2011-03-25
  • 打赏
  • 举报
回复
具体问题
我拆分输入字符串后得到的字符就存在一个不可见字符(通过DUMP函数显示)
但是我输入的字符(通过DUMP函数是不存在不可见字符的)
我想问下 这个问题的原因是什么导致的
延伸一下
我想知道什么情况下 会产生不见字符以及产生的原因
解决方法不需要 只要产生不可见的情况和原因
njlywy 2011-03-25
  • 打赏
  • 举报
回复
这个问题描述不太清楚,具体到点…

17,377

社区成员

发帖
与我相关
我的任务
社区描述
Oracle 基础和管理
社区管理员
  • 基础和管理社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧