【SQLite】データベースにデータを書き込む

データベースにデータを書き込むためにwrite_dataメソッドを作成する

import sqlite3
import os

class Database:
  def __init__(self,_dbname='main.db'):
    self.dbname = _dbname
    if os.path.isfile(self.dbname) != True:
      self.create_bd()
      self.create_table()

  def create_bd(self):
    conn = sqlite3.connect(self.dbname)
    conn.close()

  def create_table(self):
    conn = sqlite3.connect(self.dbname)
    cur = conn.cursor()
    cur.execute('CREATE TABLE users(id INTEGER PRIMARY KEY AUTOINCREMENT, name STRING, message STRING)')
    conn.close()

  def write_data(self,_name,_message):
    conn = sqlite3.connect(self.dbname)
    cur = conn.cursor()
    cur.execute(f'INSERT INTO users(name,message) values("{_name}", "{_message}")')
    conn.commit()
    conn.close()

db = Database()
db.write_data('inoha_naito','Hello, CGI!')

参考

sqlite3 --- SQLite データベースに対する DB-API 2.0 インタフェース — Python 3.9.4 ドキュメント

コメント

タイトルとURLをコピーしました