ホームページ  >  記事  >  バックエンド開発  >  Python でのデータベース処理: SQLite と Redis

Python でのデータベース処理: SQLite と Redis

王林
王林オリジナル
2023-09-04 19:37:12697ブラウズ

私たちが生きている情報化時代では、世界中でどれだけのデータが交換されているかがわかります。私たちは基本的に、大規模なデータを作成、保存、取得しています。これらすべてに対処する方法があるはずです。管理なしでどこにでも広がる可能性はありませんよね?これはデータベース管理システム (DBMS) です。

DBMS は、データベース内のデータの作成、保存、変更、取得、その他の操作を可能にするソフトウェア システムです。このようなシステムのサイズも、パーソナル コンピュータのみで実行される小規模システムからメインフレームで実行される大規模システムまでさまざまです。

このチュートリアルの焦点は Python であり、データベース設計ではありません。はい、Python はデータベースと対話する能力が非常に高いので、それをこのチュートリアルで説明します。 Python を使用して SQLite データベースと Redis データベースを操作する方法を学びます。

###はじめましょう!

Python データベース API

上で述べたように、Python はデータベースと対話できます。しかし、どうやってそんなことができるのでしょうか? Python は、Python Database API と呼ばれるものを使用してデータベースと対話します。この API を使用すると、さまざまなデータベース管理システム (DBMS) をプログラムできます。ただし、コード レベルで実行されるプロセスは、次のように異なる DBMS でも同じです。

選択したデータベースへの
    接続
  1. を確立します。 データと通信するための
  2. カーソル
  3. を作成します。 SQL を使用してデータを操作します (
  4. Interaction
  5. )。 SQL 操作をデータに適用して永続化するように接続に指示するか (
  6. Commit
  7. )、これらの操作を中止するように指示して (Rollback)、それによってデータをインタラクション それが起こる前の状態。
  8. データベースへの接続を閉じます。
  9. SQLite
SQLite は、オープン ソース、フル機能、スタンドアロン (外部ライブラリからのサポートはほとんど必要ありません)、サーバーレス (データベース エンジンを実行するためにサーバーは必要なく、ローカルに保存されたデータベースです)、ゼロ構成 (インストールやインストールが不要) です。構成が必要です)、SQL に基づく軽量のデータベース管理システム (SQLite テーブルで SQL クエリを実行できます) で、データを保存するために

データ ファイルを使用します。

SQLite は Google、Apple、Microsoft などの大企業によって使用されており、非常に信頼性が高いことは言及する価値があります。このチュートリアルでは、SQLite を使用してデータベースと対話します。具体的には、Python の sqlite3 モジュールを使用します。 Python と SQLite

前述したように、データベースの使用には

5 つの主要な手順が含まれます。これらの手順を実際に見てみましょう。

1. 選択したデータベースへの接続を確立します

このステップは次のように実装されます:

conn = sqlite3.connect('company.db')

sqlite3 ドキュメントに記載されているとおり:

このモジュールを使用するには、まずデータベースを表す

Connection オブジェクトを作成する必要があります。

上記のコードでは、データはファイル
company.db に保存されることに注意してください。
2. データと通信するためのカーソルを作成する

データベースを操作する次のステップは、以下に示すようにカーソルを作成することです:

curs = conn.cursor()

3. SQL を使用してデータを操作する

データベースに接続してカーソルを作成したら、データを処理 (操作) できるようになります。つまり、データベース company.db

で SQL コマンドを実行できるようになりました。

データベース

company に新しいテーブル employee

を作成するとします。この場合、SQL コマンドを実行する必要があります。これを行うには、

sqlite3 モジュールの execute() メソッドを使用します。したがって、Python ステートメントは次のようになります: curs.execute('テーブル従業員(名前、年齢)の作成')

このステートメントは、2 つの列 (フィールド)

name および age

を持つ

employee という名前のテーブルを作成する SQL コマンドを実行します。 これで、次のように新しい SQL コマンドを実行してテーブルにデータを挿入できるようになります: curs.execute("従業員の値を挿入 ('Ali', 28)")

以下に示すように、複数の値を一度に挿入することもできます。

値 = [('ブラッド',54), ('ロス', 34), ('ムハマド', 28), ('ビラル', 44)]

この場合、メソッド

executemany() を使用する代わりに、メソッド execute()

を使用して上記の複数の値を実行します。

curs.executemany('従業員の値 (?,?) を挿入', value)

4. 変更を送信する

このステップでは、前のステップで行った変更を適用 (コミット) します。シンプルで次のようになります:

conn.commit()

5. データベースへの接続を閉じます

操作を実行して変更をコミットした後の最後のステップは、接続を閉じることです:

conn.close()

すべてのステップをスクリプトに記述してみましょう。プログラムは次のようになります (最初に sqlite3 モジュールをインポートする必要があることに注意してください): リーリー

スクリプトを実行すると、現在のディレクトリに

company.db という名前のファイルが取得されるはずです。次のステップで使用するので、このファイルをダウンロードします。

6. データベースを参照してみましょう

データベースとテーブルを作成し、データを追加した後、

company.db (前のセクションでダウンロードしたファイル) の中身を見てみましょう。このために、DB Browser for SQLite という優れたツールを使用します。先に進み、ツールをコンピュータにダウンロードしてください。プログラムを開くと、次のような画面が表示されるはずです:

Python でのデータベース処理: SQLite と Redis

上部にある

Open Database ボタンを使用してデータベースを開きます。この場合、以下に示す データベース構造 が表示されます。

Python でのデータベース処理: SQLite と Redisテーブル

employee

をリストしたことに注意してください。このテーブルには、nameage の 2 つのフィールドが含まれています。 上記のコードが機能し、データがテーブルに追加されたことを確認するには、

データの参照

タブをクリックします。次のような内容が表示されるはずです:

Python でのデータベース処理: SQLite と Redisデータベース (

company

) とテーブル (employee) が作成され、データがテーブルに正常に追加されたことがわかります。 Redis

Remote Dictionary Server (

Redis と呼ばれます) は、メモリ内キャッシュとしても機能する強力な NoSQL データベースです。 Redis は Salvatore Sanfilippo によって開発され、現在 Redis Labs によって保守されています。このソフトウェアは C プログラミング言語で書かれており、オープンソース (BSD ライセンス) です。

Redis の最も注目すべき機能の 1 つは、データ構造の保存メカニズムです。 Python と同じデータ型 (文字列、セット、整数、リスト、辞書など) を使用して、Redis にデータを保存できます。

このため、Redis は Python 開発者の間で人気の選択肢となっています。

Redis と Python

データ構造の保存メカニズムに加えて、Python 開発者は、Python クライアントが多数あるため、他の NoSQL データベースよりも Redis を好みます。最も一般的な選択肢はおそらく redis-py です。 Redis-py は、Redis サーバーにさまざまなデータを保存するための組み込みコマンドを提供します。

Redis の基本を理解したところで、データを Redis に保存する方法を学びましょう。続行する前に、コンピューターに Redis サーバーがインストールされていることを確認してください。

1. Redis.py クライアントをインストールします

まず、Python スクリプト用に

redis-python という新しいフォルダーを作成します。次に、コマンド ターミナルを使用してフォルダーに移動し、次のコマンドを実行して Redis クライアントをインストールします: リーリー

次に、

redis-pythonapp.py という名前のファイルを作成し、テキスト エディターでそのファイルを開きます。次のステップでは、データベースにデータを追加するための Python スクリプトを作成します。

2. Redis クライアントを Redis サーバーに接続します

まず、

app.pyredis をインポートし、Redis サーバーのホストとポート アドレスの変数を設定します: リーリー

次に、データベースに追加するデータを定義します。この例では、単純な Python 辞書を作成します:

リーリー

次に、

try...excect を使用して add_to_db 関数を定義します。 try ブロックでは、ローカル Redis サーバーに接続し、上記の辞書をデータベースに保存し、コンソールに値を出力します。コードが失敗した場合、エラー オブジェクトが 例外 ブロックに出力されます。最後の部分では関数を実行します: リーリー 3. サーバーを起動してコードを実行します

まず、コマンド ターミナルで次のコマンドを実行して、Redis サーバーを実行します。 リーリー

サーバーがアクティブになったら、次のコマンドを使用して Python スクリプトを実行できます。

python app.py

如果一切顺利,包含用户配置文件的字典将使用 newUserOne 键添加到 Redis。此外,您应该在终端控制台上看到以下输出:

{
  'ID': '1', 
  'name': 'Kingsley Ubah', 
  'email': 'ubahthebuilder@gmail.com', 
  'role': 'Tech Writing', 
}

这就是 Redis 的全部内容!

结论

本教程仅触及使用 Python 处理数据库的皮毛。您可以从 sqlite3 模块了解更多方法,您可以在其中执行不同的数据库操作,例如更新和查询数据库。

要了解有关 redis-py 的更多信息,请立即阅读其完整文档。玩得开心!

以上がPython でのデータベース処理: SQLite と Redisの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。