Вставка точки через libpq с pgexecparams

Я пытаюсь вставить точку в таблицу 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)";


person user3791372    schedule 07.08.2014    source источник


Ответы (1)


paramValues[0] = "100,200"; делает свое дело.

Я также добавлю для составных типов, что ( и ) обходят значения следующим образом: paramValues[1] = "(10.25, some name)", который будет представлять тип, созданный с помощью create type foo (some_real real, some_name varchar(100))

person user3791372    schedule 07.08.2014
comment
Пожалуйста, не добавляйте спасибо в качестве ответа. Вместо этого проголосуйте за ответы, которые вы считаете полезными. - person ivarni; 07.08.2014
comment
Прошу прощения? Спасибо, это не ответ, а код. Других ответов, кроме моего, нет. - person user3791372; 07.08.2014
comment
Виноват. Этот ответ появился в очереди на проверку, и единственное, что было видно рецензентам, — это сам ответ. Добавление «Спасибо» было хорошим способом запутать меня. Я бы посоветовал вам отредактировать и удалить «Спасибо», иначе вы рискуете, что другие рецензенты сделают ту же ошибку. - person ivarni; 07.08.2014
comment
Возможно, программное обеспечение следует переписать, чтобы отображать вопрос при просмотре ответов, поскольку контекст решает все! - person user3791372; 07.08.2014
comment
Я думаю, что идея с предоставлением меньшего контекста состоит в том, чтобы ускорить процесс рецензирования, если бы это отнимало слишком много времени, люди бы этого не делали. В основном произошло то, что программное обеспечение пометило ответ как подозрительный из-за его длины, а затем он подлежит экспертной оценке, которая может закончиться или не быть помечена как требующая внимания модератора. Мой первый комментарий был готовым ответом, предоставленным системой. Не о чем беспокоиться, теперь ваш ответ выглядит нормально. (Подробнее об очередях проверки здесь: meta.stackexchange.com/questions/161390/) - person ivarni; 07.08.2014
comment
@ivarni, возможно, добавление счетчика ответов поможет модераторам предотвратить эту же проблему. - person user3791372; 07.08.2014