本文介绍了存储Oracle数据库表的ROWID作为一个字符数组的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我想检索Oracle数据库表和存储的ROWID在内存中的字符数组供以后使用。例如,我运行以下查询:
I would like to retrieve ROWID of a table from Oracle DB and store in memory as a character array for later use. For example, I run the following query:
SELECT ROWID, MARKS FROM MTB WHERE EID='123';
然后使用Pro * C,我想存储这个ROWID作为一个字符数组存款准备金率以后使用
为:
Then using Pro*C, I would like to store this ROWID as a character array rrr to use later as:
UPDATE MTB SET MARKS = 80 WHERE ROWID='<rrr>'
请帮忙,并指向PRO * C的使用适当的文件到ROWID转换为字符串数组。
Please help and point to appropriate documentation of Pro*C usage to convert a ROWID to an array of character strings.
推荐答案
您可以使用的和 CHARTOROWID 一>功能:
SELECT ROWIDTOCHAR(ROWID), MARKS INTO :rrr, :marks FROM MTB WHERE EID='123';
然后
UPDATE MTB SET MARKS = 80 WHERE ROWID=CHARTOROWID(:rrr);
这篇关于存储Oracle数据库表的ROWID作为一个字符数组的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!