Rumah > pangkalan data > tutorial mysql > Bagaimana untuk Melaksanakan Pertanyaan SQL Mentah Dalam Django Views?

Bagaimana untuk Melaksanakan Pertanyaan SQL Mentah Dalam Django Views?

DDD
Lepaskan: 2024-12-24 00:33:10
asal
501 orang telah melayarinya

How to Execute Raw SQL Queries Within Django Views?

Melaksanakan Pertanyaan SQL Mentah dalam Django Views

Dalam paparan Django, menggunakan pertanyaan SQL mentah boleh menyediakan akses terus kepada pangkalan data, membolehkan lebih besar fleksibiliti dan kecekapan dalam senario tertentu. Untuk melaksanakan pertanyaan SQL mentah dalam paparan Django, pertimbangkan langkah berikut:

1. Import modul yang diperlukan:

from django.db import connection
Salin selepas log masuk

2. Tetapkan kursor:

cursor = connection.cursor()
Salin selepas log masuk

3. Laksanakan pertanyaan SQL mentah:

cursor.execute('''YOUR_SQL_QUERY_HERE''')
Salin selepas log masuk

4. Ambil keputusan (pilihan):

row = cursor.fetchone()
Salin selepas log masuk

5. Cetak keputusan (pilihan):

print(row)
Salin selepas log masuk

Contoh:

Pertimbangkan kod contoh berikut:

from app.models import Picture

def results(request):
    all = Picture.objects.all()
    # Perform raw SQL query to count votes for "yes"
    cursor = connection.cursor()
    cursor.execute('''SELECT count(*) FROM people_person WHERE vote = "yes"''')
    yes_count = cursor.fetchone()[0]
    return render_to_response(
        'results.html',
        {'picture': picture, 'all': all, 'yes': yes_count},
        context_instance=RequestContext(request)
    )
Salin selepas log masuk

Dalam ini contoh, paparan hasil menggunakan pertanyaan SQL mentah untuk mengambil kiraan undi untuk "ya" dan bukannya bergantung pada Django ORM.

Atas ialah kandungan terperinci Bagaimana untuk Melaksanakan Pertanyaan SQL Mentah Dalam Django Views?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan