gpt4 book ai didi

C ODBC将sql结果保存在动态数组中

转载 作者:行者123 更新时间:2023-11-30 17:56:21 25 4
gpt4 key购买 nike

我开发了一个小型 C++ 工具,它可以从 SQL 结果填充 xml。我使用 C ODBC 库连接到 SQL 服务器。该函数获取记录:

...
char result[5][64]; //More flexible
...

for (i = 0; i < columns; i++) {
SQLBindCol(stmt, i + 1, SQL_C_CHAR, result[i], sizeof(result[i]), &indicator[i]);
}

while (SQL_SUCCEEDED(SQLFetch(stmt))) {
for (i = 0; i < columns; i++) {
if (indicator[ i ] == SQL_NULL_DATA) {
cout << format("Column %1% : NULL") % i << endl;
}
else {
cout << format("Column %1% : %2%") % i % result[i] << endl;
}
}
}

我将结果保存在结果字符数组中。我想以更动态的方式执行此操作。如果有更多记录或值更长,则要保存。我知道 C 中的 mallocC++ 中的 new,但在我的情况下如何使用它?任何想法?我应该切换到tiodbc行吗?

最佳答案

首先计算来自数据库的记录数,然后使用 malloc 来计算分配该大小的内存。我认为这会让我更加动态

关于C ODBC将sql结果保存在动态数组中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13643285/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com