我正在尝试使用c ++将点插入到Postgresql表中。这是我到目前为止所拥有的:

const char * paramValues[1];
paramValues[0] = "{100,200}";
res = PQexecParams(conn, "insert into test (pt) values ($1::point)", 1, NULL, paramValues, NULL, NULL, 0);


它给出错误:“类型点的无效输入错误”

我应该使用什么代替{100,200}?我也尝试过paramValues[0] = "point(100,200)";

最佳答案

paramValues[0] = "100,200";可以解决问题。

我还将为复合类型添加一个(,而)会像这样围绕值:paramValues[1] = "(10.25, some name)"表示使用create type foo (some_real real, some_name varchar(100))创建的类型

10-02 03:51