目錄
user表
1.數據庫連接
import pymysql
db = pymysql.connect("localhost", "user", "", "test")
cursor = db.cursor()
cursor.execute("select version()")
data = cursor.fetchone()
print("Database version : %s" % data)
db.close()
運行結果:Database version : 10.1.37-MariaDB
2.創建表
import pymysql
db = pymysql.connect("localhost", "user", "", "test")
cursor = db.cursor()
cursor.execute("drop table if exists employee")
sql = """create table employee(
name char(20) not null,
sex char(1),
income float )"""
cursor.execute(sql)
db.close()
3.插入數據
sql = "insert into employee(name, sex, income ) values ('周杰倫', 'M' ,1997)"
try:
cursor.execute(sql)
db.commit()
except:
db.rollback()
db.close()
4.查詢
5.更新
cursor = db.cursor()
sql = "update employee set name = '你好22' where name = '你好'"
try:
cursor.execute(sql)
db.commit()
except:
db.rollback()
db.close()
6.刪除
cursor = db.cursor()
sql = "delete from employee where income > %s" %(2000)
try:
cursor.execute(sql)
db.commit()
except:
db.rollback()
db.close()
7.執行事務
8.錯誤處理
9.整體總結
import pymysql
class DB():
def __init__(self, host='localhost', port=3306, db='', user='root', passwd='root', charset='utf8'):
# 建立連接
self.conn = pymysql.connect(host=host, port=port, db=db, user=user, passwd=passwd, charset=charset)
# 創建遊標,操作設置爲字典類型
self.cur = self.conn.cursor(cursor = pymysql.cursors.DictCursor)
def __enter__(self):
# 返回遊標
return self.cur
def __exit__(self, exc_type, exc_val, exc_tb):
# 提交數據庫並執行
self.conn.commit()
# 關閉遊標
self.cur.close()
# 關閉數據庫連接
self.conn.close()
if __name__ == '__main__':
with DB(host='192.168.68.129',user='root',passwd='zhumoran',db='text3') as db:
db.execute('select * from course')
print(db)
for i in db:
print(i)