成人无码视频,亚洲精品久久久久av无码,午夜精品久久久久久毛片,亚洲 中文字幕 日韩 无码

資訊專欄INFORMATION COLUMN

Python-MySQLdb

Zachary / 2078人閱讀

摘要:還有一點(diǎn),有的教程說應(yīng)該設(shè)置來關(guān)閉自動(dòng)提交事務(wù),這應(yīng)該也就是我不要的原因了吧。這種更改數(shù)據(jù)庫的方式都要進(jìn)行,但是這類查詢操作就沒有必要了,因?yàn)椴粫?huì)更改到數(shù)據(jù)庫。

準(zhǔn)備工作

首先要新建一個(gè)數(shù)據(jù)庫python和一張數(shù)據(jù)表user

$ mysql -u root -p 
> create database python;

> use database python;

> create table user(
username varchar(32),
password varchar(32)
);
連接到數(shù)據(jù)庫
In [1]: import MySQLdb

# 獲取connection
In [2]: conn = MySQLdb.connect(
host = "127.0.0.1",
port = 3306,
user = "root",
passwd ="root",
db = "python",
charset = "utf8"
)

# 獲取到cusor,所有的操作都要通過cursor進(jìn)行
In [3]: cursor = conn.cursor()
插入操作
In [4]: sql = "insert into user (username, password) values(%s, %s)"

# 這里我們將要插入的數(shù)據(jù)存入一個(gè)tuple當(dāng)中
In [5]: cursor.execute(sql, ("zxy", "123")
Out[5]: 1L

因?yàn)檫@里是要插入數(shù)據(jù),所以要commit,但是我不進(jìn)行commit好像也沒有問題。我查閱到的資料的解釋是,當(dāng)curosr.execute()執(zhí)行成功的時(shí)候,執(zhí)行conn.commit(),但是執(zhí)行失敗的時(shí)候,就執(zhí)行conn.roolback(),跟hibernate一樣,應(yīng)該也是進(jìn)行事務(wù)的回滾。還有一點(diǎn),有的教程說應(yīng)該設(shè)置conn.autocommit(False)來關(guān)閉自動(dòng)提交事務(wù),這應(yīng)該也就是我不要commit的原因了吧。insert/update/delete這種更改數(shù)據(jù)庫的方式都要進(jìn)行commit,但是select這類查詢操作就沒有必要了,因?yàn)閟elect不會(huì)更改到數(shù)據(jù)庫。

In [6]: conn.commit()

# 我這里省去了commit,好像也行
In [7]: cursor.execute(sql, ("yd", "456"))
Out[7]: 1L
查詢操作
In [8]: sql = "select * from user"

In [9]: cursor.execute(sql)
Out[9]: 2L

# fetchall是得到所有的結(jié)果,你以可以使用fetchone()來只查詢一條數(shù)據(jù),或者fetchmany(size=n)來指定查詢的條數(shù)
In [10]: result = cursor.fetchall()           

In [11]: cursor.fetchall()
Out[11]: ((u"zxy", u"123"), (u"yd", u"456"))

# 還可以打印出查詢到的條數(shù)以用來優(yōu)雅的遍歷
In [12]: print(cursor.rowcount)
2

# 最后記得關(guān)閉conn和cursor
In [13]: cursor.close()

In [14]: conn.close()

文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請注明本文地址:http://m.hztianpu.com/yun/38391.html

相關(guān)文章

  • [零基礎(chǔ)學(xué)python]用Python操作數(shù)據(jù)庫(3)

    摘要:用選擇要操作的數(shù)據(jù)庫,然后通過指針就可以操作這個(gè)數(shù)據(jù)庫了。這樣就在這個(gè)數(shù)據(jù)庫中創(chuàng)建了一個(gè)名為的表這是查看表的方式。樹欲靜而風(fēng)不止,小偷在行動(dòng)。所以,要特別提醒諸位注意。 通過python操作數(shù)據(jù)庫的行為,除了能夠完成前面兩講中的操作之外(當(dāng)然,那是比較常用的),其實(shí)任何對(duì)數(shù)據(jù)庫進(jìn)行的操作,都能夠通過python-mysqldb來實(shí)現(xiàn)。 建立數(shù)據(jù)庫 在《用python操作數(shù)據(jù)庫(1)...

    BDEEFE 評(píng)論0 收藏0
  • [零基礎(chǔ)學(xué)python]通過Python連接數(shù)據(jù)庫

    摘要:用來編寫網(wǎng)站,必須要能夠通過操作數(shù)據(jù)庫,所謂操作數(shù)據(jù)庫,就是通過實(shí)現(xiàn)對(duì)數(shù)據(jù)的連接,以及對(duì)記錄字段的各種操作。交互模式下操作數(shù)據(jù)庫之連接數(shù)據(jù)庫操作數(shù)據(jù)庫的前提是先有數(shù)據(jù)庫。先建立一個(gè)數(shù)據(jù)庫。 用Python來編寫網(wǎng)站,必須要能夠通過python操作數(shù)據(jù)庫,所謂操作數(shù)據(jù)庫,就是通過python實(shí)現(xiàn)對(duì)數(shù)據(jù)的連接,以及對(duì)記錄、字段的各種操作。上一講提到的那種操作方式,是看官直接通過交互模式來操...

    hover_lew 評(píng)論0 收藏0
  • Ubuntu下使用flask+mysql的架構(gòu)搭建Web框架

    摘要:使用的默認(rèn)已安裝先安裝安裝的模塊安裝編寫測試 使用的ubuntu 15.04Python 2.7(默認(rèn)已安裝) 先安裝mysqlsudo apt-get install mysql-server 安裝MySQLdb的模塊sudo apt-get install python-mysqldb 安裝Flasksudo easy_install Flask 編寫測試: #-*- codin...

    neuSnail 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

閱讀需要支付1元查看
<