Djangoでデータベースのデータを取得する方法

Djangoでは、次の方法でデータベースのデータ操作を行うことができます。

  1. ORM(オブジェクトリレーショナルマッピング)を利用:Djangoが備える高水準のORMにより、ネイティブなSQL文を書くことなく、Pythonコードから直接データベースを操作できます。まず、Djangoの設定ファイルでデータベース接続情報を設定します。次に、アプリケーション側で、Djangoのモデル(Model)を使ってデータテーブルの構造を定義します。クエリー(Query)オブジェクトを用いれば、フィルタリング、並び替え、更新など、さまざまなデータベース操作を実行できます。クエリーの結果はモデルインスタンスとして返却され、インスタンスの属性から具体的なデータベースフィールドデータにアクセスできます。

ネイティブの日本語で言い換える簡単な例:

from myapp.models import MyModel

# 查询所有数据
all_objects = MyModel.objects.all()

# 过滤数据
filtered_objects = MyModel.objects.filter(field1='value1')

# 排序数据
sorted_objects = MyModel.objects.order_by('field1')

# 更新数据
MyModel.objects.filter(field1='value1').update(field2='new_value')

# 删除数据
MyModel.objects.filter(field1='value1').delete()
  1. 繋がり

以下に簡単な例を挙げます

from django.db import connection

# 执行原生SQL查询
with connection.cursor() as cursor:
    cursor.execute("SELECT * FROM myapp_mymodel WHERE field1 = %s", ['value1'])
    result = cursor.fetchall()

# 处理查询结果
for row in result:
    # 处理每一行数据
    ...

ORMかネイティブSQLクエリを使う場合はいずれもアプリケーションに関連するモデルやデータベース接続オブジェクトをインポートし、必要に応じて操作を行う必要がある

bannerAds