У меня есть следующий пример кода Python, и когда я пытаюсь выполнить, я получаю сообщение об ошибке mysql.Контекст, я пытаюсь создать пользовательские журналы, журнал сообщений, вставить в таблицу MySql для анализа.Предоставление соответствующих частей для mysql execute.
levelnum= str(record.levelno) # 40
levelname=str(record.levelname) # ERROR
msg=str(self.log_msg) # "This error occurred: This is test message"
createtime=str(tm) #2018-06-26 03:43:47
record.name = 'MY_LOGGER'
sql = 'INSERT INTO emp.log (log_level, log_levelname, log, created_at, created_by) VALUES ('+levelnum+ ', '+levelname+ ', '+msg+ ', '+createtime+ ', '+record.name+')'
Error message: ProgrammingError: (1064, u"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 'error msg, 2018-06-26 03:43:47, MY_LOGGER)' at line 1")
Я использую mysql и пытаюсь вставить в таблицу следующее:
try:
self.sql_cursor.execute(sql)
self.sql_conn.commit()
except pymysql.InternalError as e:
print e
print 'CRITICAL DB ERROR! Logging to database not possible!'
Я думаю, что отсутствует некоторое форматирование при передаче параметров вSQL-запрос, но не смог получить правильный.
Оцените, если кто-то может помочь исправить это.