为提高效率,提问时请提供以下信息,问题描述清晰可优先响应。
【DM版本】:DM8
【操作系统】:
【CPU】:
【问题描述】*:OCI当执行完OCIStmtPrepare后如何获取sql中的参数个数以及名称
如sql如下:INSERT INTO SYSLOG(LOGID,LEVEL,MOUDLENAME,INFO) VALUES (:LOGID,:LEVEL,:MOUDLENAME,:INFO);
执行完OCIStmtPrepare后,有没有办法获取相应 OCIStmt 句柄上 关于sql的参数个数,参数名称?
通过OCIStmtGetBindInfo函数获取,具体:
sword OCIStmtGetBindInfo ( OCIStmt *stmtp,
OCIError *errhp,
ub4 size,
ub4 startloc,
sb4 *found,
text *bvnp[],
ub1 bvnl[],
text *invp[],
ub1 inpl[],
ub1 dupl[],
OCIBind *hndl[] );
说明:
DM OCI和Oracle OCI的用法是一样的,具体可以网上搜索下示例。