python讀取mysql
一,安裝Mysql-python
python 連接mysql資料庫需要 Python interface to Mysql包,包名為
MySQL-python
,PyPI上現在到了1.2.5版本。MySQL-python在windows下是通過.exe文件的installer安裝的,
前提是已經安裝的python需要寫入注冊表,參考這篇文章:windows安裝python2.7後的注冊(registry)問題。
然後開始安裝MySQL-python,不過這里有個坑,從PyPI上下載的MySQL-python版本--
MySQL-python-1.2.5.win32-py2.7.exe (md5)--不一定能用,原因是python環境和MySQL-python在軟體位數上可能不一致,
比如,我本地安裝的python是64位,從PyPI上下載的MySQL-python就沒法使用,
會報這樣的錯誤:python ImportError: DLL load failed: %1
只要安裝正確位數的MySQL-python就可以了,這里分享下64位的:
MySQL-python-1.2.5.win-amd64-py2.7.exe
二,簡單使用
參考代碼如下:
Python2.7.6(default,Nov102013,19:24:24)[MSCv.150064bit(AMD64)]onwin32
importMySQLdb
conn=MySQLdb.connect(host='localhost',port=3306,user='root',passwd='123456',db='test')
cur=conn.cursor()
cur.execute('select`title`,`text`from`entries`limit10')
2L
cur.fetchall()
(('bokeyuan','bokeyuantext...'),('googletranslate','googletranslatetext...'))
cur.close()
conn.close()
⑵ 如何用python3連接mysql資料庫
python3使用PyMysql連接mysql資料庫
python語言的3 x完全不向前兼容,導致我們在python2 x中可以正常使用的庫,到了python3就用不了了 比如說mysqldb目前MySQLdb並不支持python3
python語言的3.x完全不向前兼容,導致我們在python2.x中可以正常使用的庫,到了python3就用不了了.比如說mysqldb
目前MySQLdb並不支持python3.x , Python3.x連接MySQL的方案有:oursql, PyMySQL, myconnpy 等
下面來說下python3如何安裝和使用pymysql,另外兩個方案我會在以後再講。
1.pymysql安裝
pymysql就是作為python3環境下mysqldb的替代物,進入命令行,使用pip安裝pymysql
1
pip install pymysql3
2.pymysql使用
如果想使用mysqldb的方式,那麼直接在py文件的開頭加入如下兩行代碼即可。
1
2
3
4
#引入pymysql
import pymysql
#當成是mysqldb一樣使用,當然也可以不寫這句,那就按照pymysql的方式
pymysql.install_as_MySQLdb()
⑶ python3怎麼導入mysql
python3發布以來,獲取了廣大程序員們的差評,說不穩定,又是不兼容什麼的,不過差評歸差評,python3既然已經發布,肯定是個趨勢,但在python3.4裡面,使用原來python2.7的mysqldb已經不能連接mysql資料庫了,比較令人糾結,不過我們可以使用pymysql,來完成連接mysql的重任,步驟如下:
序號描述
1去github上下載pymysql的安裝包 pymysql
2解壓到某個盤符下
3打開cmd窗口(win環境下),進入pymysql的根目錄下執行命令,python setup.py install4在程序里,導入pymysql
5開始連接資料庫
資料庫操作的API文檔連接: http//legacy.python.org/dev/peps/pep-0249/代碼如下:
__author__ = 'qindongliang'
#導入pymysql的包
import pymysql
try:
#獲取一個資料庫連接,注意如果是UTF-8類型的,需要制定資料庫conn=pymysql.connect(host='localhost',user='root',passwd='qin',db='person',port=3306,charset='utf8')cur=conn.cursor()#獲取一個游標
cur.execute('select * from person')
data=cur.fetchall()
for d in data :
#注意int類型需要使用str函數轉義
print("ID: "+str(d[0])+' 名字: '+d[1]+" 性別: "+d[2])cur.close()#關閉游標
conn.close()#釋放資料庫資源
except Exception :print("發生異常")
結果如下:
D:\python\python.exe D:/pythonide/pythonprojectworkspace/python/mysql.pyID: 1 名字: 秦天 性別: 男
ID: 2 名字: 王晶 性別: 女
Process finished with exit code 0
⑷ 如何用python連接mysql資料庫
資料庫連接
連接資料庫前,請先確認以下事項:
您已經創建了資料庫 TESTDB.
在TESTDB資料庫中您已經創建了表 EMPLOYEE
EMPLOYEE表欄位為 FIRST_NAME, LAST_NAME, AGE, SEX 和 INCOME。
連接資料庫TESTDB使用的用戶名為 "testuser" ,密碼為 "test123",你可以可以自己設定或者直接使用root用戶名及其密碼,Mysql資料庫用戶授權請使用Grant命令。
在你的機子上已經安裝了 Python MySQLdb 模塊。
如果您對sql語句不熟悉,可以訪問我們的 SQL基礎教程
⑸ python連接MySQL資料庫實例分析
python連接MySQL資料庫實例分析
本文實例講述了python連接MySQL資料庫的方法。分享給大家供大家參考。具體實現方法如下:
import MySQLdb
conn = MySQLdb.connect(host="localhost",
user="root",
passwd="123456",
db="test")
cursor = conn.cursor()
cursor.execute("select * from hard")
res = cursor.fetchall()
for x in res:
print x
cursor.close()
conn.close()
運行結果如下:
希望本文所述對大家的python程序設計有所幫助。
⑹ Python 操作 MySQL 的5種方式
1、MySQLdb
# 前置條件
sudo apt-get install python-dev libmysqlclient-dev # Ubuntu
sudo yum install python-devel mysql-devel # Red Hat / CentOS
# 安裝
pip install MySQL-python
Windows 直接通過下載 exe 文件安裝
#!/usr/bin/python
import MySQLdb
db = MySQLdb.connect(
host = "localhost", # 主機名
user = "root", # 用戶名
passwd = "pythontab.com", # 密碼
db = "testdb") # 資料庫名稱
# 查詢前,必須先獲取游標
cur = db.cursor()
# 執行的都是原生SQL語句
cur.execute("SELECT * FROM mytable")
for row in cur.fetchall():
print(row[0])
db.close()
2、mysqlclient
# Windows安裝
pip install some-package.whl
# linux 前置條件
sudo apt-get install python3-dev # debian / Ubuntu
sudo yum install python3-devel # Red Hat / CentOS
brew install mysql-connector-c # macOS (Homebrew)
pip install mysqlclient
3、PyMySQL
pip install PyMySQL
# 為了兼容mysqldb,只需要加入
pymysql.install_as_MySQLdb()
import pymysql
conn = pymysql.connect(host = 飗.0.0.1', user = 'root', passwd = "pythontab.com", db = 'testdb')
cur = conn.cursor()
cur.execute("SELECT Host,User FROM user")
for r in cur:
print(r)
cur.close()
conn.close()
4、peewee
pip install peewee
import peewee
from peewee import *
db = MySQLDatabase('testdb', user = 'root', passwd = 'pythontab.com')
class Book(peewee.Model):
author = peewee.CharField()
title = peewee.TextField()
class Meta:
database = db
Book.create_table()
book = Book(author = "pythontab", title = 'pythontab is good website')
book.save()
for book in Book.filter(author = "pythontab"):
print(book.title)
5、SQLAlchemy
from sqlalchemy import create_engine
from sqlalchemy.orm import sessionmaker
from sqlalchemy_declarative import Address, Base, Person
class Address(Base):
__tablename__ = 'address'
id = Column(Integer, primary_key = True)
street_name = Column(String(250))
engine = create_engine('sqlite:///sqlalchemy_example.db')
Base.metadata.bind = engine
DBSession = sessionmaker(bind = engine)
session = DBSession()
# Insert a Person in the person table
new_person = Person(name = 'new person')
session.add(new_person)
session.commit()