ошибка в выполнении вставки в таблицу с использованием MySQL коннектора в C / C ++ - PullRequest
0 голосов
/ 05 июля 2018
sql::Driver     *driver;
sql::Connection *dbConn;
sql::Statement  *stmt; 
try{
    driver = get_driver_instance(); 
    dbConn = driver->connect("tcp://172.0.0.1:3306", "user", "password");
    stmt = dbConn->createStatement();
    dbConn->setSchema("zabbix");
    res = stmt->executeQuery("INSERT INTO table(name,surname) VALUES ('123','33333333')");
}catch (sql::SQLException e)    {
    cout << "SQL error. Error message: " << e.what() << endl;
}   

Здравствуйте, ребята, у меня есть следующая проблема: в этом коде я пытаюсь вставить данные в мою таблицу, но когда код прибывает в row execute query, он собирается перехватить часть (error code: 0) и данные были вставлены, и когда я пытаюсь выполнить код без try/catch, программа блокируется.

Точка ошибки:

[First <kbd>F5</kbd>] `Unhandled exception at 0x00007FFF7B254008 in ConsoleApplication3.exe: Microsoft C++ exception: sql::SQLException at memory location 0x00000014AFDDF5F0.`


[Second <kbd>F5</kbd>]: `Unhandled exception at 0x00007FFF7BCEA508 (ucrtbase.dll) in ConsoleApplication3.exe: An invalid parameter was passed to a function that considers invalid parameters fatal.`

что является причиной этой проблемы? как правильно использовать вставку в таблицу?

1 Ответ

0 голосов
/ 05 июля 2018

Я нашел решение проблемы, проблема заключалась в следующем: я изменил executeQuery в executeUpdate и коде он больше не идет в части catch (google translate)

...