用c脚本将存储在变量中的数据插入到Postgres数据库表中



我已经写了一个c脚本插入数据到PostgreSQL表。在代码中,我有缓冲区变量中的数据,我想将这些数据写入数据库。我试图插入一个变量使用":",但它不工作。因为我在编码方面没有什么经验,所以我仍然无法修改我的代码来完成这项工作。我在下面列出了代码部分。有人知道如何修改我的代码工作吗?

res = PQexec(conn, "INSERT INTO pressure(SENSORVAL) VALUES(:buffer)");

if (PQresultStatus(res) != PGRES_COMMAND_OK) 
do_exit(conn, res);     
PQclear(res);

要在查询中使用参数,必须使用PQexecParams。SQL语句中的参数必须为$1,并且在paramValues参数中提供参数:

#include <libpq-fe.h>
const char * const paramValues[1] = { "value" };
PGresult *res = PQexecParams(conn,
"INSERT INTO pressure (sensorval) VALUES ($1)",
1,        /* number of parameters */
NULL,     /* parameter types (inferred from context) */
paramValues,
NULL,     /* parameter lengths (ignored for strings) */
NULL,     /* parameter formats (text) */
0         /* result format (text) */
);

最新更新