91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Python之MySQLdb操作數據庫

發布時間:2020-07-26 15:16:30 來源:網絡 閱讀:618 作者:無法長大 欄目:數據庫

一、python操作數據庫

1.格式:大概分為三部分

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

代碼

import MySQLdb

 

conn = MySQLdb.connect(host='192.168.0.180',user='cattle',passwd='cattle',db='cattle')

cur = conn.cursor()  #創建連接

 

reCount = cur.execute('select * from admin')

data = cur.fetchall() #對數據進行操作

 

cur.close()       #關閉連接

conn.close()

 

print data

print reCount   #這個的意思是執行完這條命令影響的條數

結果

((1L'n2''a2'), (2L'n1''a1'))

2

1.連接的建立與釋放


建立連接時可用connect函數,它返回一個connection類型對象

1

db = MySQLdb.connect(host='192.168.0.180',user='cattle',passwd='cattle',db='cattle')

connect常用的參數:
host:數據庫主機名.默認是用本地主機
user:數據庫登陸名.默認是當前用戶
passwd:數據庫登陸的秘密.默認為空
db: 要使用的數據庫名.沒有默認值
port:MySQL服務使用的TCP端口.默認是3306
charset:數據庫編碼

如果在數據編碼設置正確時,向數據庫插入數據出現亂碼時,可以設置連接的字符集參數


釋放連接時可以用connection類型對象的close方法

1

conn.close()

2.cursor對象

執行SQL語句前要獲得一個指定連接的cursor對象,由cursor對象對象執行SQL查詢并獲得結果

獲得cursor對象的方法

1

cur = conn.cursor()

在默認情況下cursor方法返回的是BaseCursor類型對象,BaseCursor類型對象在執行查詢后每條記錄的結果以列表(list)表示。如果要返回字典(dict)表示的記錄,就要設置cursorclass參數為MySQLdb.cursors.DictCursor

1

cur = conn.cursor(cursorclass=MySQLdb.cursors.DictCursor)

3.插入、刪除、更新、查詢等操作

cursor類型提供了execute方法用于執行SQL語句

3.1查詢

1

cur.execute('select * from admin')

3.2獲取結果

獲取結果有三種方式:fetchone、fetchall、fetchmany,返回結果是tuple,tuple中每一個元素對應查詢結果中的一條記錄

fetchone()返回結果集中的第一條記錄

fetchall()返回結果集中的所有記錄

fetchmany([size])返回結果集中的size條記錄

3.3插入

由于SQL語句較長所以可以將SQL語句定義成變量

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

import MySQLdb

 

conn = MySQLdb.connect(host='192.168.0.180',user='cattle',passwd='cattle',db='cattle')

cur = conn.cursor()

 

sql = "insert into admin (name,address) values(%s,%s)"  #name和address相當于key,%s是占位符

params = ('n4','a4'#n4和a4相當于value,寫在占位符的位置

 

reCount = cur.execute(sql,params)

conn.commit() #執行完增加、刪除、更改的動作都得執行這步進行提交才能生效

 

cur.close()

conn.close()

 

print reCount

3.4刪除

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

import MySQLdb

 

conn = MySQLdb.connect(host='192.168.0.180',user='cattle',passwd='cattle',db='cattle')

cur = conn.cursor()

 

sql = "delete from admin where id = %s"

params = (1)

 

reCount = cur.execute(sql,params)

conn.commit()

 

cur.close()

conn.close()

 

print reCount

3.5更改

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

import MySQLdb

 

conn = MySQLdb.connect(host='192.168.0.180',user='cattle',passwd='cattle',db='cattle')

cur = conn.cursor()

 

sql = "update admin set name = %s where id = 8"

params = ('n8')

 

reCount = cur.execute(sql,params)

conn.commit()

 

cur.close()

conn.close()

 

print reCount

4.事務

python操作數據庫的時候一旦有錯誤不提交操作,全部都沒問題的時候才提交




向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

会宁县| 连南| 长宁县| 壤塘县| 永仁县| 崇明县| 蕲春县| 万安县| 南乐县| 白山市| 如皋市| 文登市| 拜城县| 旌德县| 昆明市| 新干县| 长寿区| 敦煌市| 安泽县| 南漳县| 裕民县| 兴隆县| 安陆市| 澄迈县| 拉萨市| 信宜市| 乡城县| 青岛市| 和田市| 乃东县| 渑池县| 惠安县| 营口市| 华阴市| 商水县| 青阳县| 彰化县| 临朐县| 宁城县| 郓城县| 观塘区|