【備忘録】ちょっとしたメモ書き【備忘録】

自分でやったこと調べてみた事とのメモ書きブログです
主に周辺機器の翻訳した取り説や故障修理の手順を記録しています。

Sqlite3でログをシコシコ(2.7))

2023年09月05日 | python?

import sqlite3

# SQLiteデータベースに接続
conn = sqlite3.connect('log_data.db')
cursor = conn.cursor()

# データベースにテーブルを作成(既に作成済みの場合はスキップ)
cursor.execute('''
    CREATE TABLE IF NOT EXISTS logs (
        id INTEGER PRIMARY KEY,
        timestamp DATETIME,
        event_type TEXT,
        additional_info TEXT
    )
''')

# テキストファイルからログデータを読み取り、データベースに挿入(重複を避ける)
with open('server_logs.txt', 'r') as file:
    for line in file:
        data = line.strip().split(' ')
        if len(data) >= 3:
            timestamp = data[0] + ' ' + data[1]
            event_type = data[2]
            additional_info = ' '.join(data[3:]) if len(data) > 3 else ''

            # 重複をチェックするためのクエリ
            cursor.execute('SELECT id FROM logs WHERE timestamp = ? AND event_type = ? AND additional_info = ?', (timestamp, event_type, additional_info))
            existing_data = cursor.fetchone()

            if not existing_data:
                # 重複がない場合のみ挿入
                cursor.execute('INSERT INTO logs (timestamp, event_type, additional_info) VALUES (?, ?, ?)', (timestamp, event_type, additional_info))

conn.commit()
conn.close()

コメント    この記事についてブログを書く
  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする
« DBを連携してみたいときの入... | トップ | Sqlite3でログをシコシコ2(... »
最新の画像もっと見る

コメントを投稿

ブログ作成者から承認されるまでコメントは反映されません。

python?」カテゴリの最新記事