2016-05-27 1 views
1

Раньше проблема и что-то, что казалось простым вначале.Создание многострочных запросов к базе данных в python

Я хочу сделать это (запрос был упрощенным вниз для краткости здесь, это на самом деле гораздо больше и сложнее):

query = ("""INSERT INTO %s " % cfg['mysql.table'] 
       "('hostname', 'timestamp', 'metric', 'average', 'peakhigh', 'peaklow', 'gsamp', 'zsamp', 'nsamp')""" 
       "VALUES (%s, %s, %s, %s, %s, %s, %s, %s, %s)" 
      ) 

Так как же я incorpoarate STR_TO_DATE в этот запрос для поля метки времени?

Спасибо за любую помощь.

+0

Попробуйте создать свой запрос в тройных кавычках. – Gadget

+0

Как вы выполняете этот компонент строки, используя подход тройной цитаты, хотя - «INSERT INTO% s»% cfg ['mysql.table']? – BenH

ответ

1

Поместите строку в тройных кавычках:

query = ("""INSERT INTO %s " % cfg['mysql.table'] 
       "('hostname', 'timestamp', 'metric', 'average', 'peakhigh', 'peaklow', 'gsamp', 'zsamp', 'nsamp')" 
       "VALUES (%s, %s, %s, %s, %s, %s, %s, %s, %s)""" 
      ) 
+0

Хорошо, позвольте мне попробовать это снова, я, должно быть, что-то толкнул, когда я пробовал этот подход перед публикацией. – BenH

+0

Любая идея, как я запускаю STR_TO_DATE для поля timestamp? – BenH

+0

Попробуйте изменить второй '% s' на' STR_TO_DATE (% s, '% d /% m /% Y') ', если это соответствует требуемому формату dd/mm/YYYY. – Gadget

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