ACIStmtGetBindInfo()

ACIStmtGetBindInfo()

作用:

获取绑定和指标变量名称。

语法:

sword ACIStmtGetBindInfo ( ACIStmt      *stmtp,
                           ACIError     *errhp,
                           ub4           size,
                           ub4           startloc,
                           sb4          *found,
                           OraText      *bvnp[],
                           ub1           bvnl[],
                           OraText      *invp[],
                           ub1           inpl[],
                           ub1           dupl[],
                           ACIBind      *hndl[] );

参数:

  • stmtp(IN)

ACIStmtPrepare2 准备的语句句柄。

  • errhp(IN)

当发生错误时,可以将错误句柄传递给 ACIErrorGet 以获取诊断信息。

  • size(IN)

每个数组中的元素数。

  • startloc(IN)

绑定变量的位置,从该位置开始获取绑定信息。

  • found(in)

表达式abs(found)给出语句中绑定变量的总数,而与起始位置无关。如果返回的绑定变量的数量小于提供的大小,则为正值,否则为负。

  • bvnp(OUT)

持有绑定变量名称的指针数组。使用上一次调用 ACIEnvNlsCreate 的charset参数指定的编码。

  • bvnl(OUT)

数组,用于保存每个bvnp元素的长度。长度以字节为单位。

  • invp(OUT)

用来保存指标变量名称的指针数组。必须使用上一次调用 ACIEnvNlsCreate 的charset参数指定的编码。

  • inpl(OUT)

指针数组,用于保存每个invp元素的长度。以字节数为单位。

  • dupl(OUT)

一个数组,其元素值为0或1,具体取决于绑定位置是否是另一个的重复。

  • hndl(OUT)

如果对绑定位置进行了绑定,则该数组返回绑定句柄。没有句柄返回重复项。

说明:

准备语句后,此调用返回有关绑定变量的信息。 这包括绑定名称,指示符名称以及绑定是否为重复绑定。 如果存在,此调用还将返回关联的绑定句柄。 该调用将找到的参数设置为绑定变量的总数,而不仅仅是唯一绑定变量的数量。

如果该语句没有绑定变量,或者该语句中不存在调用中指定的起始绑定位置,则返回ACI_NO_DATA。

此函数不包括SELECT INTO列表变量,因为它们不被视为绑定。

在此调用之前,必须已通过调用 ACIStmtPrepare2 准备了该语句。 语句句柄中的编码设置确定是否检索Unicode字符串。