Maison > base de données > tutoriel mysql > Comment exécuter des requêtes SQL brutes dans les vues Django ?

Comment exécuter des requêtes SQL brutes dans les vues Django ?

DDD
Libérer: 2024-12-24 00:33:10
original
554 Les gens l'ont consulté

How to Execute Raw SQL Queries Within Django Views?

Exécution de requêtes SQL brutes dans les vues Django

Dans les vues Django, l'utilisation de requêtes SQL brutes peut fournir un accès direct à la base de données, permettant ainsi une plus grande flexibilité et efficacité dans certains scénarios. Pour effectuer une requête SQL brute dans une vue Django, considérez les étapes suivantes :

1. Importez le module nécessaire :

from django.db import connection
Copier après la connexion

2. Établir un curseur :

cursor = connection.cursor()
Copier après la connexion

3. Exécutez la requête SQL brute :

cursor.execute('''YOUR_SQL_QUERY_HERE''')
Copier après la connexion

4. Récupérer les résultats (facultatif) :

row = cursor.fetchone()
Copier après la connexion

5. Imprimez les résultats (facultatif) :

print(row)
Copier après la connexion

Exemple :

Considérez l'exemple de code suivant :

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)
    )
Copier après la connexion

Dans ce Par exemple, la vue des résultats utilise une requête SQL brute pour récupérer le nombre de votes pour « oui » au lieu de s'appuyer sur Django. ORM.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal