Skip to content

Conversation

@jiaoshuntian
Copy link
Contributor

…ture design documentation

@github-actions github-actions bot temporarily deployed to pull request November 5, 2025 08:32 Inactive
@github-actions
Copy link

github-actions bot commented Nov 5, 2025

🚀 IvorySQL-Docs Preview Ready

其中,IvyexecPreparedStatement2 更为特殊:它要求用户额外提供一个 IvyBindOutInfo* 类型的输出绑定列表。该列表不仅用于绑定 OUT 参数,还被 IvyAssignPLISQLOutParameter 在获取 PL/SQL 过程返回结果时用来识别每个 OUT 参数的数据类型。因此,在处理 CALL语句时,接口会先对用户传入的 IvyBindOutInfo*列表进行位置重排(将INTO对应的输出变量移至首位),再将其写入IvyPreparedStatement语句句柄中,供后续赋值使用。

关于输出参数的精度处理:当CALL语句中的输出绑定变量与实际返回值的精度不匹配时,系统可能报错,也可能自动截断——具体行为取决于绑定变量的数据类型是否与过程/函数声明的参数类型完全一致。
在PL/SQL inline handler中,每个OUT参数的精确数据类型均可通过ParamListInfo在绑定阶段获取。如果当前执行的匿名块是由CALL语句转换而来的特殊DoStmt,那么在执行赋值时,系统会进行如下判断:
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

should it be "PL/iSQL" instead?

@github-actions github-actions bot temporarily deployed to pull request November 11, 2025 09:55 Inactive
@github-actions
Copy link

🚀 IvorySQL-Docs Preview Ready

@gaoxueyu gaoxueyu merged commit 2fb11a9 into IvorySQL:master Nov 12, 2025
2 checks passed
@jiaoshuntian jiaoshuntian deleted the call_into branch November 24, 2025 02:08
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants