亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

mysql conn執行后 需要每次關閉cursor么?

mysql conn執行后 需要每次關閉cursor么?

慕仙森 2018-07-21 21:07:14
獲取一個conn,需執行多條命令,每次執行一個sql后需要關閉cursor么?
查看完整描述

2 回答

?
繁星點點滴滴

TA貢獻1803條經驗 獲得超3個贊

一般是給數據庫連接池來操作每個連接實例的開和閉
如果是自己獲取的話,在方法執行最后,最好關閉。

查看完整回答
反對 回復 2018-07-28
?
波斯汪

TA貢獻1811條經驗 獲得超4個贊

可以一次執行多條。用python來舉個栗子

import MySQLdb as mdb
import sys

conn = mdb.connect(host = 'localhost', user = 'root', passwd = '123456', db = 'test')
 
 cur = conn.cursor()
cur.execute("insert into contact values('key1', 'value1')")
cur.execute("select * from test")
row_num = int(cur.rowcount)for i in range(row_num):
     row = cur.fetchone()     print row
 #在數據操作完成之后,進行commit,完成數據庫的數據更新
 conn.commit()
 cur = conn.cursor()
 conn.close()

此問題與MySQL的存儲引擎對事務的支持有關。 MySQL中有多種類型的存儲引擎, 例如: MyISAM, InnoDB等。 MyISAM不支持事務處理, 而InnoDB是事務型數據庫, 支持事務。比如InnoDB引擎, 所以對數據庫數據的操作會在事先分配的緩存中進行, 只有在commit之后, 數據庫的數據才會改變。


查看完整回答
反對 回復 2018-07-28
  • 2 回答
  • 0 關注
  • 5037 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號