以下は、pymysql を使用してデータをクエリするためのサンプル コードです。
```python
import pymysql
# 连接数据库
conn = pymysql.connect(
host='localhost',
user='root',
password='123456',
db='your_database',
charset='utf8mb4',
cursorclass=pymysql.cursors.DictCursor
)
try:
# 创建游标对象
with conn.cursor() as cursor:
# 执行查询语句
sql = "SELECT * FROM your_table WHERE id = %s"
cursor.execute(sql, ('1',))
# 获取查询结果
result = cursor.fetchone()
# 输出查询结果
print(result)
finally:
# 关闭数据库连接
conn.close()
```
コードでは、まず `pymysql.connect` 関数を通じてデータベースに接続し、次に SQL ステートメントの実行に使用できるカーソル オブジェクト `cursor` を作成します。
次に、`cursor.execute` メソッドを使用してクエリ ステートメントを実行します。ここで、`%s` はプレースホルダであり、SQL インジェクション攻撃を防ぐために次のパラメータに置き換えることができます。次に、`cursor.fetchone` メソッドを使用して、クエリ結果の最初のデータを取得します。
最後に、必ずデータベース接続を閉じてリソースを解放してください。
注:
- 実際に使用する場合、`host`、`user`、`password`、`db`は実際のデータベース情報に変更する必要があります。
- `cursorclass=pymysql.cursors.DictCursor` は結果を辞書形式で返します。フィールド名を直接使用してデータにアクセスできます。このパラメータが設定されていない場合、結果はタプルとして返されます。
- クエリ ステートメント内の `%s` はプレースホルダーであり、実際の状況に応じて変更できます。複数のプレースホルダーがある場合は、複数のパラメーターを渡すことができます。パラメーターの順序はプレースホルダーの順序と一致している必要があります。