sql >> Databáze >  >> RDS >> Mysql

Vložte slovník do seznamu do databáze v pythonu

Máte tři úkoly:

  1. Vyloučit pole data ze seznamu
  2. Nastavit Python pro spouštění příkazů SQL
  3. Vytvořte kód pro vložení dat do databáze

Nejsem si 100% jistý, jak doufáte, že uložíte data, která jste zahrnuli do databáze, ale uvedu svůj nejlepší odhad.

items_to_insert = []
for dictionary in ls:
  #pop removes the value from the dict
  date_for_insert = dictionary.pop("datetime", None)
  if date_for_insert is None:
    raise ValueError('No datetime - aborting')
  for key in dictionary:
    items_to_insert.append([date_for_insert, key, dictionary[key]

Tento kód přejde do každého slovníku v seznamu ls, odstraní datum a čas a poté analyzuje data do pole. Nyní jste připraveni vložit data

Pro úlohu 2 budete muset použít PyMySQL nebo něco podobného a nastavit připojení a další věci a poté pro úlohu 3 spusťte:

for item in items_to_insert:
  cursor.execute("INSERT INTO mytable (Datetime,Item,Value) VALUES ('{}', '{}', '{}')".format(item[0], item[1], item[2]))

Nebo něco takového. Tento řádek je jednodušší díky předběžnému zpracování dat shora.

Možná budete muset formátovat datum a čas určitým způsobem, aby tento kód fungoval správně.




  1. MySQL - GROUP více řádků při zachování rozdílů

  2. Proč se Oracle nezdaří vytvoření spouštěče, když existuje pole s názvem časové razítko?

  3. Vývojářské nástroje pro přímý přístup k databázím

  4. String_agg pro SQL Server před rokem 2017