#include "targetver.h" #include <stdio.h> #include <tchar.h> #include <iostream> #include <string.h> #include "libpq-fe.h" #include "stdafx.h" using namespace std; int main() { const char *conninfo; PGconn *conn; std::string EmailToDB = "gfdgfdshj@mail.ru"; std::string PswdToDb = "1234"; char d = char(64); //Тестовый Char для передачи чистый ANCII const char *paramValues[2] = { (char *)&EmailToDB, (char *)&PswdToDb }; conninfo = "hostaddr = '192.168.0.130' port = '5433' user = 'postgres' password = 'pass' connect_timeout = '2'"; conn = PQconnectdb(conninfo); PQsetClientEncoding(conn, "UTF-8"); if (PQstatus(conn) != CONNECTION_OK) { fprintf(stderr, "Connection to database failed: %s", PQerrorMessage(conn)); //exit(0); } else { PQsetClientEncoding(conn, "UTF8"); printf("Good Done \n"); std::string insert = "CREATE ROLE "+ EmailToDB+" WITH PASSWORD "+PswdToDb; PGresult *res = PQexec(conn, insert.c_str()); fprintf(stderr, "UserCreeate: %s", PQerrorMessage(conn)); PQfinish(conn); } system("pause"); return 0; } The code does not work, spits out the error indicated in the header. He doesn’t accept any characters in the request except letters, numbers in the username and password are not accepted either, only aZ. Help me figure out what the problem is.