我有下面的代码(它是部分的,当然)。我可以成功连接到数据库,我可以INSERT INTO
和所有这些东西,但SELECT FROM
的结果永远不能显示。
snprintf(sqlSelect, sizeof(sqlSelect), "select * from %s", sqlTableName);
res = PQexec(conn, sqlSelect);
if (PQresultStatus(res) != PGRES_TUPLES_OK) {
fprintf(stderr, "SELECT FROM failed: %s", PQerrorMessage(conn));
PQclear(res);
exitNicely(conn);
}
PQclear(res);
为什么上面的代码不会在终端中打印SELECT * FROM db_name
?
答案 0 :(得分:1)
代码不打印或以其他方式使用结果行,它只是取出它们并将它们扔掉。
您需要遍历结果集并实际执行某些操作。有关执行此操作的一些方法,请参阅libpq examples。
(CW,因为我只是将Erwin的观点转换为答案)。