本文主要講解使用python的mysqldb庫來操作mysql資料庫,包括最常用的資料庫的select、insert、delete 、update操作。
如果還沒有安裝mysqldb包,可以參考mysqldb安裝。
1.首先本文的資料庫表為table1,具有name和id兩列,並且目前裡面有兩條資料。
2.使用python連線mysql資料庫並獲取操作游標
import mysqldb
# 開啟資料庫連線
conn = mysqldb.connect(host='localhost',user='root',passwd='117117',db='asher',port=3306)
# 使用cursor()方法獲取操作游標
cursor = conn.cursor()
3.查詢select操作,操作會返回受影響行數
# sql查詢語句
sql = "select * from table1"
# 執行sql語句
這裡執行完sql查詢語句之後,操作游標有兩個方法,乙個屬性:
其中屬性rowcount是唯讀屬性,返回影響行數;
fetchall()方法將返回全部查詢結果;
fetchone()方法將返回一行查詢結果。
# fetchone(): 該方法獲取下乙個查詢結果集。結果集是乙個物件
# fetchall():接收全部的返回結果行.
# rowcount: 這是乙個唯讀屬性,並返回執行execute()方法後影響的行數。
eg:使用fetchall()方法獲得所有記錄:
# 獲取所有記錄列表
4.插入insert操作
# sql 插入語句
sql = "insert into table1 values ('%s',%s)" %('c',11)
try:
# 執行sql語句
cursor.execute(sql)
# 提交到資料庫執行(不執行conn.commit()將不會存入資料庫)
conn.commit()
except:
# 發生錯誤時回滾
print('insert error')
conn.rollback()
5.更新update操作
eg:將id為11的資料更新為id為44
# sql 更新語句
sql = "update table1 set id = %s where id = %s" %(44,11)
try:
# 執行sql語句
cursor.execute(sql)
# 提交到資料庫執行
conn.commit()
except:
print('update error')
# 發生錯誤時回滾
conn.rollback()
6.刪除delete操作
eg:刪除id為44的資料
# sql 刪除語句
sql = "delete from table1 where id = %s" %(44)
try:
# 執行sql語句
cursor.execute(sql)
# 提交到資料庫執行
conn.commit()
except:
print('delete error')
# 發生錯誤時回滾
conn.rollback()
7.最後,操作完mysql資料庫,記得關閉資料庫連線
# 關閉資料庫連線
conn.close()
--------------------------------分割線--------------------------------
python使用mysqldb操作mysql資料庫步驟總結:
1.使用mysqldb.connect()方法連線資料庫
2.使用conn.cursor()方法獲取操作游標
3.寫sql語句
4.使用cursor.execute()方法執行sql語句
5.對於刪除、更新、插入操作使用conn.commit()方法提交到資料庫執行操作
6.發生錯誤時,使用conn.rollback()方法回滾
7.使用conn.close()關閉資料庫連線
python操作mysql查詢資料
首先需要連線資料庫,然後才查詢出資料。例如下表名字為 sinauser iduse id use name11 db12 2db233 db3class database def init self self.conn mysqldb.connect 連線資料庫 host 連線你要取出資料庫的ip,...
python操作MySQL資料庫
堅持每天學一點,每天積累一點點,作為自己每天的業餘收穫,這個文章是我在吃飯的期間寫的,利用自己零散的時間學了一下python操作mysql,所以整理一下。我採用的是mysqldb操作的mysql資料庫。先來乙個簡單的例子吧 import mysqldb try conn mysqldb.connec...
Python操作Mysql資料庫
coding utf8 author yangjing import mysqldb 查詢。def select host user root password port 3306,db sql connect mysqldb.connect host host,user user,passwd p...