データベースに接続して操作し、SQL クエリを処理する方法
アプリケーション開発のプロセスにおいて、データベースの接続と操作は非常に重要な部分です。データベースはデータを保存および管理するための重要なツールであり、SQL (構造化照会言語) はデータベースのクエリと操作のための標準言語です。この記事では、データベースに接続して操作する方法を学び、SQL クエリを処理するためのコード例をいくつか示します。
まず、操作するためにデータベースに接続する必要があります。ほとんどの開発環境では、データベース接続文字列を使用してデータベースに接続できます。特定の接続文字列は、データベース システムによって異なる場合があります。MySQL データベースに接続するコード例を次に示します:
import mysql.connector # 配置数据库连接参数 config = { 'user': 'root', 'password': 'password', 'host': 'localhost', 'database': 'mydatabase' } # 建立数据库连接 conn = mysql.connector.connect(**config) # 获取数据库的游标 cursor = conn.cursor() # 在这里执行数据库操作 # 关闭连接 conn.close()
データベースでは、カーソル オブジェクトを使用して SQL クエリを実行できます。次の例は、クエリ操作を実行してクエリ結果を取得する方法を示しています。
# 执行查询 query = "SELECT * FROM customers" cursor.execute(query) # 获取查询结果 result = cursor.fetchall() # 输出每一行的数据 for row in result: print(row)
場合によっては、さまざまな入力条件に基づいて実行する必要があるクエリオペレーション。現時点では、パラメーター化されたクエリが非常に便利です。パラメーター化されたクエリは SQL インジェクション攻撃を防止し、クエリのパフォーマンスを向上させます。以下に、パラメータ化されたクエリを実行する方法を示す例を示します。
# 执行参数化查询 query = "SELECT * FROM customers WHERE country = %s" params = ("China",) cursor.execute(query, params) # 获取查询结果 result = cursor.fetchall() # 输出每一行的数据 for row in result: print(row)
クエリ操作に加えて、データベース レコードを更新する操作も実行できます。 。以下は、データベース内のレコードを更新する方法を示す例です:
# 执行更新操作 query = "UPDATE customers SET address = %s WHERE customer_id = %s" params = ("New Address", 1) cursor.execute(query, params) # 提交事务 conn.commit() # 输出受影响的行数 print("Updated rows:", cursor.rowcount)
さらに、レコードを挿入する操作を実行することもできます。新記録。ここでは、データベースに新しいレコードを挿入する方法を示す例を示します:
# 执行插入操作 query = "INSERT INTO customers (name, email) VALUES (%s, %s)" params = ("John Doe", "johndoe@example.com") cursor.execute(query, params) # 提交事务 conn.commit() # 输出插入记录的主键值 print("Inserted ID:", cursor.lastrowid)
概要:
データベースの接続と操作、および SQL クエリの処理の知識を学ぶことで、アプリケーション プログラムをより適切に開発できます。 。データベースに接続し、クエリと更新操作を実行し、パラメータ化されたクエリと新しいレコードを挿入する方法について学習できます。これらのコード例は、Python を使用してデータベースに接続して操作する方法をより深く理解するのに役立ちます。独自の開発環境とニーズに合わせて、実際の状況に応じてコード内のデータベース接続パラメータとクエリ ステートメントを必ず変更してください。
以上がデータベースに接続して操作し、SQL クエリを処理する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。