Я могу обновить запись в таблице с помощью манипуляций со строками, которые имеют некоторую слабость.
Итак, теперь я пытаюсь обновить с помощью параметров, но это не так, как я думал.
sprintf(sql, "%s%s%s%s%s%d%s",
"UPDATE ", mytable, " SET ",
"my_id=$0, mystr1=$1, mystr2=$2, myint=$3, mydouble=$4",
"WHERE my_id='", local_my_id, "'");
const char *values[5] =
{local_my_id, local_mystr1, local_mystr2, local_myint, local_mydouble};
result = PQexecParams(conn, sql, 5, NULL, values, NULL, NULL, 0);
Значения 1 и 4 являются целыми числами, а значение 5 является двойным, что не помещается в массив const char.
Я пробую то же самое только со строками, и это работает.
Если мне нужно преобразовать числа в строки, которые не кажутся логичными.
Как это сделать правильно?