oracle OCIDefineArrayOfStruct()或PostgreSQL中的OCIBindArrayOfStruct等效函数

qnakjoqk  于 2023-04-05  发布在  Oracle
关注(0)|答案(1)|浏览(160)

我目前正在将客户端代码从OCI更新到libq。我知道OCIDefineArrayOfStruct()和OCIBindArrayOfStruct()用于通过启用多行,多列获取来提高性能。
有没有办法用libpq做同样的事情?

ddarikpa

ddarikpa1#

PostgreSQL没有在客户端使用数组的批量获取或批量DML语句的概念。
要批量获取行,请使用游标和FETCH语句。所有获取的行都将在单个PGresult中返回,您可以方便地遍历它们。要批量插入行,请使用多行INSERT语句或COPY
你将不得不从头开始重写使用C API的代码,因为Oracle和PostgreSQL的C API有很大的不同。好消息是PostgreSQL的API比Byzantine OCI方便得多。

相关问题