国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > Python > 正文

django配置連接數據庫及原生sql語句的使用方法

2020-02-16 01:26:03
字體:
來源:轉載
供稿:網友

前言

本文主要給大家介紹了關于django配置連接數據庫及原生sql語句的相關內容,分享出來供大家參考學習,下面話不多說了,來一起看看詳細的介紹吧

Django配置連接數據庫:

在操作數據庫之前,首先先要連接數據庫。這里我們以配置MySQL為例來講解。Django連接數據庫,不需要單獨的創建一個連接對象。只需要在settings.py文件中做好數據庫相關的配置就可以了。

示例代碼如下:

DATABASES = { 'default': {  # 數據庫引擎(是mysql還是oracle等)  'ENGINE': 'django.db.backends.mysql',  # 數據庫的名字  'NAME': 'dfz',  # 連接mysql數據庫的用戶名  'USER': 'root',  # 連接mysql數據庫的密碼  'PASSWORD': 'root',  # mysql數據庫的主機地址  'HOST': '127.0.0.1',  # mysql數據庫的端口號  'PORT': '3306', }}

在Django中操作數據庫:

在Django中操作數據庫有兩種方式。第一種方式就是使用原生sql語句操作,第二種就是使用ORM模型來操作。這節課首先來講下第一種。

在Django中使用原生sql語句操作其實就是使用python db api的接口來操作。如果你的mysql驅動使用的是pymysql,那么你就是使用pymysql來操作的,只不過Django將數據庫連接的這一部分封裝好了,我們只要在settings.py中配置好了數據庫連接信息后直接使用Django封裝好的接口就可以操作了。示例代碼如下:

# 使用django封裝好的connection對象,會自動讀取settings.py中數據庫的配置信息from django.db import connection# 獲取游標對象cursor = connection.cursor()# 拿到游標對象后執行sql語句cursor.execute("select * from book")# 獲取所有的數據rows = cursor.fetchall()# 遍歷查詢到的數據for row in rows: print(row)

以上的execute以及fetchall方法都是Python DB API規范中定義好的。任何使用Python來操作MySQL的驅動程序都應該遵循這個規范。所以不管是使用pymysql或者是mysqlclient或者是mysqldb,他們的接口都是一樣的。更多規范請參考:https://www.python.org/dev/peps/pep-0249/。

Python DB API下規范下cursor對象常用接口:

1、description:如果cursor執行了查詢的sql代碼。那么讀取cursor.description屬性的時候,將返回一個列表,這個列表中裝的是元組,元組中裝的分別是(name,type_code,display_size,internal_size,precision,scale,null_ok),其中name代表的是查找出來的數據的字段名稱,其他參數暫時用處不大。

2、rowcount:代表的是在執行了sql語句后受影響的行數。

3、close:關閉游標。關閉游標以后就再也不能使用了,否則會拋出異常。

4、execute(sql[,parameters]):執行某個sql語句。如果在執行sql語句的時候還需要傳遞參數,那么可以傳給parameters參數。示例代碼如下:

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 玛曲县| 井陉县| 满城县| 九龙城区| 休宁县| 巴彦淖尔市| 惠州市| 周至县| 建阳市| 开封县| 肇庆市| 江北区| 城固县| 阿拉善右旗| 内乡县| 鄢陵县| 大厂| 云安县| 丹江口市| 松滋市| 鲁甸县| 龙江县| 潞城市| 长葛市| 定南县| 揭东县| 牟定县| 仪陇县| 定结县| 竹溪县| 北安市| 九龙城区| 秦安县| 潼关县| 凤阳县| 松潘县| 堆龙德庆县| 肇东市| 西乌珠穆沁旗| 嘉定区| 汤原县|