python數(shù)據(jù)庫連接那些事

各位玩蛇的大佬都知道,使用python連接數(shù)據(jù)庫是很平常的操作,而Django、各種ORM等模塊底層也必須用到這些數(shù)據(jù)庫依賴,但是MySqldb、mysql_connector、pymysql、OurSQL、mysqlclient是不是有點(diǎn)傻傻分不清,使用的時(shí)候到底應(yīng)該選哪個(gè)?感覺蒙蒙的,下面就簡(jiǎn)單說一下這些模塊的區(qū)別,以及現(xiàn)狀。

MySQL-Python

這里十分不推薦MySQL-Python,首先吐槽下MySQL-Python也就是MySqlDb。

1、環(huán)境不好安裝

特別是windows,(ubuntu黨請(qǐng)繞行)因?yàn)橥耆怯胏實(shí)現(xiàn)的,所以必須安裝了mysql,才能裝上,需要mysql的底層庫,裝這個(gè)模塊就得裝個(gè)mysql,多霸道。當(dāng)然在linux,你可以只把mysql的這個(gè)庫搞過來,就可以用了,但是折騰過好幾個(gè)windows環(huán)境后,對(duì)這個(gè)東西實(shí)在是深痛惡覺。

2、不支持py3

現(xiàn)在MySQL-Python不支持py3,當(dāng)然據(jù)說可以打補(bǔ)丁,以某種神奇方式使用,因?yàn)榭隙ㄓ械疤鄣拇笈v鼓,想折騰的小伙伴可以移駕google研究下,但是還是不推薦。

說說優(yōu)點(diǎn),不得不說的是,這個(gè)模塊對(duì)比其他mysql連接模塊穩(wěn)定而且快速(雖然我并沒有感覺到),但是底層純用c實(shí)現(xiàn)的,肯定快,而且存在這么多年了,穩(wěn)定是必須的。

mysqlclient

相信這個(gè)模塊大家應(yīng)該用的或者聽說的比較少,但是這個(gè)模塊也是實(shí)實(shí)在在的數(shù)據(jù)庫連接模塊,這個(gè)是從MySQL-Python fork出來的,所以也是純c編寫,速度一流,穩(wěn)定性一般,支持python3.3,這個(gè)的維護(hù)者和pymysql是同一群人哦。

OurMysql

這個(gè)同樣是由純c編寫的數(shù)據(jù)庫連接模塊,但是依然不支持py3.看到作者說2012.6.5支持,目測(cè)是坑了,沒用過這個(gè)模塊,不做介紹。不過如果對(duì)數(shù)據(jù)庫連接速度有極高要求的小伙伴,可以摸索用一下這個(gè)。

MySQL-Connector-Python

這個(gè)模塊和上面c編寫的就截然不同了,這個(gè)模塊完全由純python編寫,血統(tǒng)純正,也就是由此會(huì)比上面的三個(gè)模塊慢,但是這個(gè)模塊有個(gè)好爸爸,是由oracle所持有,而且傲嬌的oracle沒有把這個(gè)模塊放到pypi,所以你懂得,安裝要自己下載。當(dāng)然了這個(gè)模塊是支持python3,而且也比較穩(wěn)定,畢竟是大廠出品,用起來體驗(yàn)很不錯(cuò)。

PyMySQL

這個(gè)模塊是作者積極推薦的模塊,社區(qū)活躍,開源,支持pypi,由純python編寫,支持所有的Openstack標(biāo)準(zhǔn),應(yīng)該是py里現(xiàn)在最火的數(shù)據(jù)庫連接模塊了,而且可以在Django中替代MySqldb,用起來很不錯(cuò)。

下面是一個(gè)簡(jiǎn)單的表格對(duì)比

至于連接速度以及使用方法,這里就不多介紹了。

就先寫到這里吧!!

本博客暫時(shí)禁止轉(zhuǎn)載,強(qiáng)行轉(zhuǎn)載請(qǐng)表明出處,否則后果自負(fù)。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • # Python 資源大全中文版 我想很多程序員應(yīng)該記得 GitHub 上有一個(gè) Awesome - XXX 系列...
    aimaile閱讀 26,844評(píng)論 6 427
  • 環(huán)境管理管理Python版本和環(huán)境的工具。p–非常簡(jiǎn)單的交互式python版本管理工具。pyenv–簡(jiǎn)單的Pyth...
    MrHamster閱讀 3,964評(píng)論 1 61
  • GitHub 上有一個(gè) Awesome - XXX 系列的資源整理,資源非常豐富,涉及面非常廣。awesome-p...
    若與閱讀 19,355評(píng)論 4 417
  • 看了推薦才去看的這部劇,結(jié)果沒忍住啊,一下子狂飆了二十多集,導(dǎo)致現(xiàn)在腦子里面全是芃芃的身影,要復(fù)習(xí)的時(shí)候還得先把她...
    cuckoo醬閱讀 617評(píng)論 4 4
  • 有些小伙伴認(rèn)為上了企鵝媽媽Alice有趣有料、干貨夾雜著雞湯的課程,上完課程搖身一變就成為獨(dú)立插畫師了,就有源源不...
    寧博Villa閱讀 545評(píng)論 3 5

友情鏈接更多精彩內(nèi)容