【发布时间】:2009-02-26 17:05:24
【问题描述】:
我可以在C程序中通过OCI调用ORACLE存储过程,通过为命令构造SQL命令,这是我代码中的一个简短的sn-p:
/* build sql statement calling stored procedure */
strcpy ( sql_stmt, "call get_tab_info(:x)" );
rc = OCIStmtPrepare(p_sql, p_err, sql_stmt,
(ub4) strlen (sql_stmt), (ub4) OCI_NTV_SYNTAX, (ub4) OCI_DEFAULT);
但是我如何(在我的 C 程序中)构造一个对具有以下签名的 ORACLE 函数的调用:
CREATE OR REPLACE FUNCTION get_seq_number (p_table_name IN VARCHAR2, p_seq_type IN VARCHAR2)
RETURN NUMBER IS
要在 PL/SQL 中调用函数,我会使用例如:
v_seq := get_seq_number(v_tabname, v_seqtype);
如何构造 SQL 字符数组 (sql_stmt) 以在我的 C 程序中调用 ORACLE 函数?
【问题讨论】:
标签: c oracle oracle-call-interface