вставка метки времени в таблицу MySQL в Python

0

bid, best_bid_quantity - floats, target_date устанавливается как timestamp в моем db.

получить временную метку

target_date_time_ms = (k.lastRestRequestTimestamp) 

base_datetime = datetime.datetime( 1970, 1, 1 )

delta = datetime.timedelta( 0, 0, 0, target_date_time_ms )

target_date = base_datetime + delta

timestamp = target_date

db = MySQLdb.connect(host="localhost",    # your host, usually localhost
                         user="root",         # your username
                         passwd="lolilol",  # your password
                         db="test")        # name of the data base

cur = db.cursor()

try:

   cur.execute("""INSERT INTO test1 (heure, prix, quantite) VALUES ({},{},{})""".format(target_date, bid, best_bid_quantity))
   db.commit()

except:
    print('did not insert')
    db.rollback()

db.close()

error → it is to except, если я добавляю target_date

  • 0
    Попробуйте получить исключение, чтобы распечатать больше информации, например: except Exception as e: print(e) . Тогда скажите нам, в чем именно заключается ошибка.
  • 0
    (1064, «У вас есть ошибка в вашем синтаксисе SQL; проверьте правильность синтаксиса для руководства, соответствующего вашей версии сервера MySQL, около '13: 25: 34.218000,0.071,24.434)" в строке 1 ")
Показать ещё 2 комментария
Теги:

1 ответ

1

Попробуйте использовать time.strftime():

time.strftime('%Y-%m-%d %H:%M:%S', target_date.timetuple())

Для преобразования объекта datetime.datetime объекта target_date в структуру time_struct требуется метод .timetuple(), который затем может быть использован в вызове time.strftime.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню