Pythonの標準ライブラリでデータベースを使ってみる
Pythonの標準ライブラリでデータベースを使ってみる
Pythonの標準ライブラリにSQLite3があるので使ってみる
SQLite3
こんな感じで。
import sqlite3 from contextlib import closing # データベース DBPATH = './database.db' # ユーザ情報 ID = 10000 NAME = 'Rimuru Tempest' # データベース接続 with closing(sqlite3.connect(DBPATH)) as connection: # カーソル生成 c = connection.cursor() # executeメソッドでSQL文を実行する create_table = '''create table if not exists users (id INTEGER PRIMARY KEY, name TEXT)''' c.execute(create_table) # idの検索 sql = 'select * from users where id = ?' id = (ID,) # tupleで渡す try: c.execute(sql, id) except sqlite3.Error as e: print('sqlite3.Error occurred:', e.args[0]) raise # データベースにIDが存在しない場合はユーザ情報を登録 if not c.fetchone(): sql = 'insert into users (ID, NAME) values (?,?)' user = (ID, NAME) # tupleで渡す try: c.execute(sql, user) except sqlite3.Error as e: print('sqlite3.Error occurred:', e.args[0]) # 結果をコミット connection.commit()
実行結果の確認
DB Browser for SQLiteがデータベースの中身を確認する時に便利です sqlitebrowser.org
実行結果