2014-02-26 3 views
2

Я пишу приложение c, которое работает с базой данных mysql. лучшая функция mysql для вставки записи в базу данных, которую я знаю, это «mysql_real_query». Большинство моих запросов вставки содержат смешанные данные, полученные из сетевого потока. для некоторых запросов, изломы исполнения говоря ..(mysql_real_query) ломается при вставке некоторых записей

mysql_real_query error You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 

Каковы другие возможные пути я могу разобрать эти данные тузда таблице, не нарушая.?

+3

Принадлежит к переполнению стека. Вы должны добавить пример используемого вами запроса, похоже, что у вас просто есть и ошибка в вашем SQL, и тогда он не будет работать с любым используемым вами методом. –

ответ

2

Этот тип ошибок очень раздражает при использовании соединений mysql в c. У меня была та же проблема, что и вы.

Итак, решением для меня была система MySQL DB Pool, которая позволяет блокировать соединения с mysql и предотвращать подобные разрывы выполнения.

Если вы объединяете БД-пул с сильными проверками при построении запросов, вы будете обгонять такие проблемы.

UPDATE

Вот пример DBPoolMySQL, не стесняйтесь использовать его, присоединиться или способствовать его улучшению. Конечно, вы можете попробовать Libzdb, который является его опцией, но его не очень понятно и настраиваемо.

+0

Очень рад получить ваши обновления. – BlueBird

+0

@BlueBird проверить мое обновление. –

Смежные вопросы