大家好,现在遇到一个问题如下:
定义宿主变量char str[10+1];
数据库表A中一个字段aaa(varchar2(10))的值是'abcdefg'
通过程序取值:
EXEC SQL select aaa into :str from A;
得到的值显示出来是'abcdefg '
后面会多出三个空格,好像会自动填满。请问我不需要后面的空格,该如何改动?
谢谢!
定义宿主变量char str[10+1];
数据库表A中一个字段aaa(varchar2(10))的值是'abcdefg'
通过程序取值:
EXEC SQL select aaa into :str from A;
得到的值显示出来是'abcdefg '
后面会多出三个空格,好像会自动填满。请问我不需要后面的空格,该如何改动?
谢谢!
解决方案 »
- 请教一个 database link 的问题。万分感谢!
- cmd命令导出oracle数据库出错
- 如何将一个数据库里某个表空间的表全部转移到另外一个数据库
- Hibernate正向工程生成oracle数据库,ORA-02275: 此表中已经存在这样的引用约束条件
- 命令提示符登录Oracle导入数据库用什么语句?
- 向oracle中插入xml问题,我已经快崩溃了!
- sql plus中提示"ORA-12541:TNS 没有监听器" 但tns listener 可以正常启动!
- 字段名与关键字冲突如何解决
- 怎么从以有的数据库导出一个表的SQL语句?
- 一个有关ORACLE游标的问题(查无数据),在线等待
- 寻求linux下的C++ Oracle数据库开发资料或书籍
- 帮我看看这个orcal 语句什么意思!!
我的字段都是清楚过空格的'update A set aaa=LTRIM(RTRIM(aaa));'并且用客户端(如toad)查看这个字段,后面都是没有空格的。
查看长度(length(aaa))的结果也是7可是从程序里面读出来就会多3个空格。。
加上这个试试
这个我试过了。但是我是在makefile中加的,所以对输入宿主变量也会产生影响。不过好像有函数rtrim和ltrim函数,不过我无法调用。请问这需要哪个头文件?
一是将宿主变量定义成varchar型,这样可以知道长度。但是这样对代码的改动非常大。
二是自己写一个去掉空格的函数,对每个输出宿主变量都调用这个函数。
谢谢大家了!!!