sql >> データベース >  >> RDS >> Mysql

リスト内の辞書をPythonのデータベースに挿入します

    3つのタスクがあります:

    1. リストから日付フィールドを除外します
    2. SQLコマンドを実行するようにPythonを設定する
    3. データベースにデータを挿入するためのコードを作成します

    データベースに含めたデータをどのように保存するかは100%わかりませんが、最善の推測をします。

    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]
    

    このコードは、lsリストの各辞書に移動し、日時を削除してから、データを配列に解析します。これで、データを挿入する準備が整いました

    タスク2の場合は、PyMySQLなどを使用し、接続などを設定してから、タスク3の場合は次のコマンドを実行する必要があります。

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

    またはそのようなもの。上からのデータ前処理により、この行は簡単です。

    このコードが正しく機能するためには、特定の方法で日時をフォーマットする必要がある場合があります。




    1. MySQL、RailsActiveRecordの日付グループとタイムゾーン

    2. MySQLクイックヒント:DROPUSERコマンドの使用

    3. SQL Serverクエリでテーブル構造を表示するにはどうすればよいですか?

    4. OracleシンドライバとOCIドライバ。長所と短所?