Python對(duì)數(shù)據(jù)庫(kù)操作
Windows下安裝MySQL-python
下載地址:https://pypi.python.org/pypi/MySQL-python/1.2.5 安裝到系統(tǒng)即可。
linux下安裝MySQL-python以連接MySQL:
下載地址:https://pypi.python.org/pypi/MySQL-python/
解壓后,進(jìn)入目錄下,執(zhí)行python setup.py install
安裝過(guò)程中,常會(huì)遇到的問(wèn)題:
1、 提示找不到mysql_config的話,一般是由于mysql采用的是lnmp一鍵安裝包安裝的,路徑
解決:locate mysql_config找到mysql_config這個(gè)文件的位置,然后ln -s做個(gè)軟連接到/usr/bin/下。
2、 Ubuntu下提示缺少'x86_64-linux-gnu-gcc'時(shí),需要安裝python-dev包:
解決:sudo apt-get install python-dev -y
3、 CentOS下提示command 'gcc' failed with exit status 1
解決:yum install gcc python-devel -y
安裝完成后,進(jìn)入python,執(zhí)行import MySQLdb看導(dǎo)入是否能成功。
補(bǔ)充:
我在ubuntu下操作時(shí)候,發(fā)現(xiàn)無(wú)法連接數(shù)據(jù)庫(kù),ss -lnt發(fā)現(xiàn)mysql只監(jiān)聽(tīng)在回環(huán)地址上的3306端口,需要修改下。
修改Ubuntu的mysql,將其監(jiān)聽(tīng)端口127.0.0.1:3306改為允許外部連接的方法:
編輯/etc/mysql/my.cnf(可能配置參數(shù)再此目錄下的其它文件中,仔細(xì)找找)
修改bind-address = 0.0.0.0 表示允許任意IP訪問(wèn)。
然后執(zhí)行 /etc/init.d/mysql restart重啟mysqlserver服務(wù)即可
# 下面是一個(gè)Python操作數(shù)據(jù)庫(kù)的例子:
#!/usr/bin/env python
# -*- coding:utf8 -*-
import MySQLdb
conn = MySQLdb.connect(
host = '192.168.2.14',
port = 3306,
user = 'root',
passwd = '123456',
db = 'demo',
)
# 操作數(shù)據(jù)庫(kù)首先需要?jiǎng)?chuàng)建游標(biāo)
cur = conn.cursor()
# 通過(guò)游標(biāo)cur操作execute()方法可以寫(xiě)入純sql語(yǔ)句,如下:
# 創(chuàng)建數(shù)據(jù)表
# cur.execute("create table teacher (id int(5),name varchar(20),class varchar(20),age varchar(10))")
# 插入數(shù)據(jù)
# cur.execute("insert into teacher values(23,'zhangsan','science',15)")
# 修改數(shù)據(jù)
# cur.execute("update teacher set id=100 where name='zhangsan'")
# 刪除數(shù)據(jù)
# cur.execute("delete from teacher where id=100")
#插入一條數(shù)據(jù)【也可以用像下面這種寫(xiě)法】
sqli="insert into teacher values(%s,%s,%s,%s)"
cur.execute(sqli, (23,'zhangsan','science',15))
# 使用executemany一次性向數(shù)據(jù)表中插入多條值,返回值為受影響的行數(shù)。
sqli="insert into teacher values(%s,%s,%s,%s)"
cur.executemany(sqli,[
(11,'wangwu','art',23),
(8,'john','math',22),
(3,'Tom','physical',25),
])
# 最后關(guān)閉游標(biāo),執(zhí)行提交操作,并關(guān)閉數(shù)據(jù)庫(kù)連接
cur.close()
conn.commit()
conn.close()
檢索并輸出數(shù)據(jù)
#!/usr/bin/env python
# -*- coding:utf8 -*-
import MySQLdb
conn = MySQLdb.connect(
host = '192.168.2.14',
port = 3306,
user = 'root',
passwd = '123456',
db = 'demo',
)
cur = conn.cursor()
# 獲得表中有多少條數(shù)據(jù)
aa = cur.execute("select * from teacher")
cur.fetchone() # fetchone()方法可以幫我們獲得表中的數(shù)據(jù),但是每執(zhí)行一次輸出一行滿足條件的值
cur.fetchone()
......
cur.scroll(0,'absolute')# 這樣能將游標(biāo)定位到表中的第一條數(shù)據(jù)
info = cur.fetchmany(aa)
for i in info:
print i
cur.close()
conn.commit()
conn.close()
有關(guān)Python對(duì)數(shù)據(jù)庫(kù)操作小編就給大家介紹這么多,希望對(duì)大家有所幫助!
- Python SQLite3數(shù)據(jù)庫(kù)操作類(lèi)分享
- python連接mongodb操作數(shù)據(jù)示例(mongodb數(shù)據(jù)庫(kù)配置類(lèi))
- python數(shù)據(jù)庫(kù)操作常用功能使用詳解(創(chuàng)建表/插入數(shù)據(jù)/獲取數(shù)據(jù))
- Python讀寫(xiě)Redis數(shù)據(jù)庫(kù)操作示例
- Python操作MySQL數(shù)據(jù)庫(kù)9個(gè)實(shí)用實(shí)例
- python連接mysql數(shù)據(jù)庫(kù)示例(做增刪改操作)
- python使用mysqldb連接數(shù)據(jù)庫(kù)操作方法示例詳解
- python操作數(shù)據(jù)庫(kù)之sqlite3打開(kāi)數(shù)據(jù)庫(kù)、刪除、修改示例
- Python使用PyGreSQL操作PostgreSQL數(shù)據(jù)庫(kù)教程
- Python調(diào)用SQLPlus來(lái)操作和解析Oracle數(shù)據(jù)庫(kù)的方法
- 學(xué)習(xí)python之編寫(xiě)簡(jiǎn)單簡(jiǎn)單連接數(shù)據(jù)庫(kù)并執(zhí)行查詢操作
- Python數(shù)據(jù)操作方法封裝類(lèi)實(shí)例
相關(guān)文章
python自動(dòng)化測(cè)試三部曲之request+django實(shí)現(xiàn)接口測(cè)試
這篇文章主要介紹了python自動(dòng)化測(cè)試三部曲之request+django實(shí)現(xiàn)接口測(cè)試,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2020-10-10
Python實(shí)現(xiàn)掃描局域網(wǎng)活動(dòng)ip(掃描在線電腦)
這篇文章主要介紹了Python實(shí)現(xiàn)掃描局域網(wǎng)活動(dòng)ip(掃描在線電腦),本文直接給出實(shí)現(xiàn)代碼,需要的朋友可以參考下2015-04-04
python如何使用requests提交post請(qǐng)求并上傳文件(multipart/form-data)
這篇文章主要給大家介紹了關(guān)于python如何使用requests提交post請(qǐng)求并上傳文件(multipart/form-data)的相關(guān)資料,Python有許多庫(kù)支持,它們可以簡(jiǎn)化HTTP上的數(shù)據(jù)傳輸,requests庫(kù)是最受歡迎的Python包之一,因?yàn)樗诰W(wǎng)絡(luò)刮削中被大量使用,需要的朋友可以參考下2023-11-11
python用plt畫(huà)圖時(shí),cmp設(shè)置方法
今天小編就為大家分享一篇python用plt畫(huà)圖時(shí),cmp設(shè)置方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2018-12-12
python opencv3實(shí)現(xiàn)人臉識(shí)別(windows)
這篇文章主要為大家詳細(xì)介紹了python opencv3實(shí)現(xiàn)人臉識(shí)別程序,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2018-05-05
將pycharm配置為matlab或者spyder的用法說(shuō)明
這篇文章主要介紹了將pycharm配置為matlab或者spyder的用法說(shuō)明,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2020-06-06
python 根據(jù)時(shí)間來(lái)生成唯一的字符串方法
今天小編就為大家分享一篇python 根據(jù)時(shí)間來(lái)生成唯一的字符串方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2019-01-01

