0
2

More than 1 year has passed since last update.

pythonでデータベースを使う sqlite3

Posted at

ライブラリをインポート

import sqlite3

データベースを作成・保存

データベースのファイル名を決め、接続する。
データベースがなければ作成する

filename = ('stock.db')
conn = sqlite3.connect(filename, isolation_level=None)

テーブルを作成してみましょう

executeでテーブルをどうするのか指示を出します
CREATE TABLE :というテーブル作成

import sqlite3
DB = ('stock.db')
conn = sqlite3.connect(DB, isolation_level=None)

cursor = conn.cursor()
sql = """CREATE TABLE stock(id int, name text,price int, dividend int)"""
cursor.execute(sql)
conn.commit()
conn.close()

テーブルの値を挿入する

INSERT INTO ** VALUES:**というテーブルに値を挿入する

import sqlite3
DB = ('stock.db')
conn = sqlite3.connect(DB, isolation_level=None)

cursor = conn.cursor()
cursor.execute("INSERT INTO stock VALUES (8591,'Orix',2338,86)")
cursor.execute("INSERT INTO stock VALUES (3244,'Samty',2078,90)")
conn.commit()
conn.close()

保存したテーブル情報を参照してみましょう

stockから全レコードを取得する。
SELECTの後に列名を記入することで、1列のみも取得できる

import sqlite3
DB = ('stock.db')
conn = sqlite3.connect(DB, isolation_level=None)

cursor = conn.cursor()
sql = """SELECT * FROM stock"""
cursor.execute(sql)
print(cursor.fetchall())
conn.close()

テーブル名の変更

ALTER TABLE A RENAME TO B:Aというテーブル名からBというテーブル名に変更

import sqlite3
DB = ('stock.db')
conn = sqlite3.connect(DB, isolation_level=None)

cursor = conn.cursor()

sql = """ALTER TABLE stock RENAME TO newStock"""

conn.execute(sql)
conn.commit()
conn.close()

データベース情報をpandas形式に変更

import pandas as pd
import sqlite3

DB = ('stock.db')
conn = sqlite3.connect(DB, isolation_level=None)

df = pd.read_sql('SELECT * FROM stock', conn)
print(df.head())

conn.close()

動画

0
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
2