Python を使用して SQLite データベースにデータを挿入する
このチュートリアルでは、SQLite データベース接続を作成し、テーブルを作成し、そのテーブルにデータを挿入するための Python の組み込み sqlite3
モジュールについて説明します。
sqlite3
モジュールを使用して、Python を使用して SQLite データベースにデータを挿入する
SQLite データベース テーブルにデータを挿入するには、次の手順に従う必要があります。
-
sqlite3
モジュールをインポートします。import sqlite3
これは組み込みモジュールです。 個別にインストールする必要はありません。 インポートして使用するだけです。
-
SQLite データベース接続を作成します。
connect = sqlite3.connect("test.db")
.connect()
メソッドは、指定された SQLite データベースに接続するための接続を作成します。 私たちの場合はtest.db
です。 次の構文を念頭に置いて、データベース名を変更できます。sqlite3.connect('database_name.db')
-
SQL クエリを実行する
cursor
オブジェクトを取得します。cursor = connect.cursor()
connect.cursor()
メソッドはcursor
オブジェクトを作成します。これを使用して SQL クエリを実行し、指定されたデータベースを操作します。これは、テーブルの作成、データの挿入、データの更新などに関するものです。 -
STUDENT
テーブルを作成します。std_table = """CREATE TABLE STUDENT( FIRSTNAME VARCHAR(255), LASTNAME VARCHAR(255));""" cursor.execute(std_table)
ここでは、最初に
CREATE TABLE
クエリを設計し、std_table
に保存します。 次に、指定されたクエリを実行するcursor.execute()
メソッドにstd_table
を渡します。 -
STUDENT
テーブルにデータを挿入します。cursor.execute("""INSERT INTO STUDENT VALUES ('Mehvish', 'Ashiq')""") cursor.execute("""INSERT INTO STUDENT VALUES ('Raza', 'Tahir')""") cursor.execute("""INSERT INTO STUDENT VALUES ('Hina', 'Mukhtar')""")
ここでは、
cursor.execute()
メソッドを使用してINSERT
クエリを実行します。STUDENT
テーブルを作成する際に、クエリを別の変数に格納する必要がないことに注意してください。 それでも、上記のINSERT
ステートメントで行ったように、SQL クエリをcursor.execute()
メソッドに渡すことができます。 -
挿入されたデータを表示します。
print("The 'STUDENT' Table Data:") table_data = cursor.execute("""SELECT * FROM STUDENT""") for row in table_data: print(row)
ここでも、
cursor.execute()
メソッドを使用してSELECT
クエリを実行し、すべてのテーブル データをtable_data
に保存します。これを使用して、各行をループして出力します。出力:
The 'STUDENT' Table Data: ('Mehvish', 'Ashiq') ('Raza', 'Tahir') ('Hina', 'Mukhtar')
-
コミットして接続を閉じます。
connect.commit() connect.close()
.commit()
は、現在選択されているデータベースの最新の変更をコミットしますが、.close()
は接続を閉じます。 完全なソース コードを以下に示します。
完全なソース コード
import sqlite3
connect = sqlite3.connect("test.db")
cursor = connect.cursor()
std_table = """CREATE TABLE STUDENT( FIRSTNAME VARCHAR(255), LASTNAME VARCHAR(255));"""
cursor.execute(std_table)
cursor.execute("""INSERT INTO STUDENT VALUES ('Mehvish', 'Ashiq')""")
cursor.execute("""INSERT INTO STUDENT VALUES ('Raza', 'Tahir')""")
cursor.execute("""INSERT INTO STUDENT VALUES ('Hina', 'Mukhtar')""")
print("The 'STUDENT' Table Data:")
table_data = cursor.execute("""SELECT * FROM STUDENT""")
for row in table_data:
print(row)
connect.commit()
connect.close()
出力:
The 'STUDENT' Table Data:
('Mehvish', 'Ashiq')
('Raza', 'Tahir')
('Hina', 'Mukhtar')