django
中的orm
提供的操作功能有限,在模型提供的查詢
api不能滿足實際工作需要時,可以在
orm中直接執行原生sql語句。
django
提供兩種方法使用原生sql進行查詢:一種是使用raw()方法,進行原生sql查詢並返回模型例項;另一種是完全避開模型層,直接執行自定義的sql語句。
# raw()
方法執行原生
sql(
呼叫的類名不區分是誰,只要存在均可執行
)
ret=models.book.objects.raw('select*
)
forbookinret:
(book.book_name)
# print(book.__dict__)
#
直接執行自定義原生
sql
(完全避開模型層,類似
pymysql
操作)
fromdjango.dbimportconnection
cursor=connection.cursor()
cursor.execute('select*
)ret=cursor.fetchall()
(ret)#((2, '
小時光
', decimal('10.00'), 2), (3, '
未來可期
', decimal('33.00'), 1), (4, '
打破思維裡的牆
', decimal('11.00'), 2), (5, '
時光不散
', decimal('11.00'), 3))
Django執行原生SQL
hey,各位小夥伴,這次怎麼來玩一下,如何使用django執行原生sql 我們都知道,python在web界的扛把子,django,可謂是集大成為統一,各種各樣的外掛程式,forms元件,model模型,admin後台 反正就是乙個字,nb 本次就來學一下,如何在django執行原生語句 在使用dj...
django執行原生sql
一 orm row 方法 只能實現查詢 d list models.article.objects.raw select nid,count nid as num,strftime y m create time as ctime from blog article where user id st...
Django執行原生SQL語句
msg show successfully error tag 0 用connection庫 和原生的sql語句讀資料庫,如下 from django.db import connection 匯入connection sql str select from book str型別的原生sql語句 c...