Pythonでdatasetモジュールを使用し簡単にデータベース操作を行う

スポンサーリンク

Pythonでdatasetモジュールを使用し簡単にデータベース操作を行うことについて解説しています。

今回はdatasetを用います。このライブラリはPythonの標準ライブラリ・モジュールではありませんので、事前にインストールする必要があります。

■Python

今回のPythonのバージョンは、「3.8.5」を使用しています。(Windows11)

■datasetモジュールを使用し簡単にデータベース操作を行う

では、早速datasetモジュールを使用し簡単にデータベース操作を行うスクリプトを書いていきます。

■コード

import dataset

db = dataset.connect('sqlite:///:memory:')

table = db['sometable']
table.insert(dict(name='田中', age=25, gender='男性'))

test = table.find_one(name='田中')

print(test)

まずはdatasetモジュールをインポートします。このモジュールは、データベースへの接続やクエリの実行などを簡単に行うためのユーティリティを提供します。

次にデータベースの接続のため、「db = dataset.connect(‘sqlite:///:memory:’)」と記述します。引数、パラメータにはデータベースの接続先を指定します。上記のコードでは、特定の場所のディスク上のファイルではなく、メモリ内の仮想的なデータベースに接続します。すべてメモリ内で処理されデータベースは消えてしまい、データは永続化されません。

次にテーブルの作成を行います。「table = db[‘sometable’]」と記述し、dbオブジェクトのインデックスアクセスを使用して、今回はsometableという名前のテーブルを作成します。このテーブルは、後でデータの挿入や検索を行うために使用されます。

作成後、レコードの挿入を行います。「table.insert(dict(name=’田中’, age=25, gender=’男性’))」と記述し、table.insert()メソッドを使用して、辞書形式のデータをテーブルに挿入します。今回は、name、age、genderの3つの列を持つレコードを挿入します。

挿入後、「test = table.find_one(name=’田中’)」と記述し、table.find_one()メソッドを使用して、nameが’田中’であるレコードを検索しています。見つかったレコードは定義したtest変数に格納されます。

最後に結果の出力をします。test変数の内容をprint()を用いて出力します。

■検証・実行

今回書いたスクリプトを「data_test.py」という名前でPythonが実行されている作業ディレクトリ(カレントディレクトリ)に保存し、コマンドプロンプトから実行してみます。

実行してみると、datasetモジュールを使用しデータベース操作を行い作成したテーブルのレコードを表示させることができました。

コメント

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