要想和mysql資料庫互動,首先需要安裝資料庫驅動模組,python2和python3的資料庫驅動是不同的。
python2中的資料庫模組是mysqldb,可以通過以下命令安裝
sudo apt-get install python-mysql
在檔案中引入模組
import mysqldb
python3中模組名為pymysql,我用pip3安裝的
sudo pip3 install pymysql
windows下的命令是
python -m pip3 install pymysql
然後是一些我碰到的問題:
1.ubuntu下安裝時用了pip,結果安裝到py2.7版本了,在重安一次
2.windows下安裝,因為有多個版本的python,會報錯,解決方法是找乙個版本管理工具,或者直接卸掉不用的版本,或者用pycharm
接下來是我實現的對資料庫模組的封裝
# -*- coding:utf-8 -*-
import pymysql
class mysqlhelper(object):
""""""
def __init__(self, host, user, paw, db):
self.host = host
self.user = user
self.paw = paw
self.db = db
self.result =
def connect(self):
self.conn = pymysql.connect(self.host, self.user, self.paw, self.db)
self.cursor = self.conn.cursor()
def close(self):
self.conn.close()
def execute_sql(self,sql):
try:
self.connect()
self.cursor.execute(sql)
self.conn.commit()
except exception as e:
self.conn.rollback()
print(e)
self.close()
def search_one(self, sql):
try:
self.connect()
self.cursor.execute(sql)
self.result = self.cursor.fetchone()
print(self.result)
except exception as e:
print(e)
self.close()
def search_all(self, sql):
try:
self.connect()
self.cursor.execute(sql)
self.result = self.cursor.fetchall()
for i in self.result:
print(i)
except exception as e:
print(e)
self.close()
if __name__ == '__main__':
# 以下是測試
my_sql = mysqlhelper("位址", "使用者名稱", "密碼", "資料庫名")
sql = """select * from student"""
my_sql.connect()
my_sql.search_all(sql)
print("hahah")
mysql與python的互動
conn connect 引數列表 cursor1 conn.cursor mode表示移動的方式 mode的預設值為relative,表示基於當前行移動到value,value為正則向下移動,value為負則向上移動 mode的值為absolute,表示基於第一條資料的位置,第一條資料位置為零 建...
python與mysql的互動
python 中操作mysql步驟 1.匯入pymsq,from pymysql import 2.建立 和資料庫之間的網路通路 conn connect host localhost port3306,database jing dong user root password mysql char...
mysql與python的互動
mysql是一種關係型資料庫,是為了表示事物與事物之間的關係,本身存於資料庫中的內容意義並不大,所以廣泛應用於程式語言中,python中九含有與mysql互動的模組 pymysql 程式設計對mysql的操作 首先需要引入pymysql模組 import pymysql 連線資料庫 一般需要幾個引數...