PythonのDictDataBaseを用いて作成したファイルの辞書にデータを書き込む

スポンサーリンク

PythonのDictDataBaseを用いて作成したファイルの辞書にデータを書き込んでみます。

この記事は「PythonのDictDataBaseを用いてデータベースのファイルを作成する」の続きとなります。

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

■Python

今回のPythonのバージョンは、「3.10.9」を使用しています。(Windows11)(pythonランチャーでの確認)

■DictDataBaseを用いて作成したファイルの辞書にデータを書き込む

では、早速DictDataBaseを用いて作成したファイルの辞書にデータを書き込むスクリプトを書いていきます。なお、作成したデータベースファイルは、前回のものを利用します。

■コード

import dictdatabase as DDB

with DDB.at("users").session() as (session, users):
    users["t_3"]["年齢"] = 99
    session.write() 
print(DDB.at("users", key="t_3").read()["年齢"])

まずは、dictdatabaseモジュールをDDBという別名でインポートします。その後、DDBモジュールのat関数を使用して、”users”という名前のデータベースにアクセスし、セッションを開始しています。セッションは、データベースの変更を処理するためのコンテキストマネージャです。sessionとusersは、sessionオブジェクトと”users”という名前のテーブル(もしくはコレクション)を指す変数です。

セッションを開始後、今回は”users”テーブル内の”t_3″というキー(またはID)を持つレコードの”年齢”フィールドを99に更新します。この操作はまだデータベースには反映されていません。

更新後、sessionに対してwriteメソッドを呼び出すことで、セッション内で行われた変更が実際にデータベースに書き込まれます。つまり、先ほどのレコードの変更が確定します。

最後に、”users”テーブルからキーが”t_3″のレコードを読み込んで、その”年齢”フィールドの値をprint関数で表示します。ここでのat関数は、指定されたテーブルとキーにアクセスするために使用されます。

■実行・検証

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

実行してみると、変更された”users”テーブル内の”t_3″というキー(またはID)を持つレコードの”年齢”フィールドが表示されました。

表示後、前回生成された「ddb_storage」というフォルダ内の「users.json」をコードエディタ等で開いてみると、データが書き込まれていることが確認できました。

コメント

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