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モジュールを使用しデータベース操作を行い作成したテーブルのレコードを表示させることができました。
コメント