【Python】データベースを使ってみよう

前回「データベース」を操作するための言語が「SQL」だということを学びました。
今回は「python」のライブラリにある「SQLite」を使って「データベース」を実際に触ってみたいと思います。

Pythonでデータベースを使ってみよう

データベースの入門として「SQLite」を使っていきます。

SQLiteってなんだ?

「SQLite」とは、名前から連想できるように「Lite(軽量)」な「SQL(データベース)」です。
「SQL」は「データベース言語」を意味しますが、「データベース」という意味でも使われていると前回紹介しましたね。

SQLについてはこちら

この「軽量な(簡易的な)データベース」を使って、学んでいきます。

「SQLite」は「Anaconda」に標準で入っていますね。
では「Jupyter Notebook」で実行していきます。

SQLiteをインポートしてみよう

「データベース」の保存場所は「Flask」でWEBアプリを作ろうとしているファイルにします。

Flaskについてはこちら

「New」で「Python3」を開きましょう。

import splite3

「sqlite3」をインポートします。

データベースを作成しよう

import splite3
------------------------------------
con = sqlite3.connect('test.db')

「test.db」という名前を付けました。
では本当に作られたのか確認しましょう。

正常に作成されていますね。

カーソルを作成しよう

import splite3

con = sqlite3.connect('test.db')
------------------------------------
c = con.cursor()

カーソルを作成する理由を見てみましたが、いまいちピンときませんでした。
カーソルを作成することで、データ全体を見るのではなく見たいデータだけにアクセスできるようなイメージでしょうか。それによって処理が軽くなるとか?
とりあえず作成して、進めます。

テーブルを作成しよう

import splite3

con = sqlite3.connect('test.db')
c = con.cursor()
---------------------------------------------
c.execute("CREATE TABLE data_set(id, name)")

【CREATE TABLE】で、「テーブル(TABLE)」を「作成(CREATE)」しています。
「execute()」に渡してあげる「SQL文」で実行する内容が変わってきますね。

データを追加してみよう

import splite3

con = sqlite3.connect('test.db')
c = con.cursor()

c.execute("CREATE TABLE data_set(id, name)")
-------------------------------------------------------------
c.execute("INSERT INTO data_set(id, name) VALUES(1, 'ANDo')")
c.execute("INSERT INTO data_set(id, name) VALUES(2, 'blog')")

con.commit()

「execute()」に【INSERT INTO】で「テーブルの名前」を付けて【VALUES】で「データの中身」を入力しています。

「commit()」でデータを更新しています。
データを追加した後は、毎回必要になります。

データを確認しよう

import splite3

con = sqlite3.connect('test.db')
c = con.cursor()

c.execute("CREATE TABLE data_set(id, name)")

c.execute("INSERT INTO data_set(id, name) VALUES(1, 'ANDo')")
c.execute("INSERT INTO data_set(id, name) VALUES(2, 'blog')")

con.commit()
-------------------------------------------------------------
c.execute("SELECT id,name FROM data_set")

list1 = c.fetchone()
print(list1)

con.close()

「execute()」に【SELECT】で確認したい「テーブル」を「選択」しています。
【FROM】は「data_set」の中からということですね。

「fetchone()」で、データを1行取得しています。
ちなみに「fetchall()」で、すべて取得します。

では「print()」してみましょう。

1行目の(1, ANDo)が返ってきました。
今回はこれくらいにしておきます。笑

まとめ

「SQLite」を試してみました。
いろいろと命令文はありましたが、比較的簡単に実行できました。
どんなものなのかを知るという入門では、とてもよかったです。
ぜひ参考にしてみてください。
それではまた。

  • X

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

IT用語

次の記事

【DB】SQL文を見てみよう