本次我们来研究一下用Python操纵mysql数据库。
首先,我们来建立一个名为mydb的本地数据库。
我们对这个数据库进行相关设置,最终得到下面效果:
接着我们打开python进行数据库的连接,代码如下:
import pymysql
config={
"host":"127.0.0.1",
"user":"root",
"password":"Aa@123",
"database":"mydb"
}
db = pymysql.connect(**config)
print(db)
当连接成功后,会显示:
紧接着我们对这个数据库的数据进行增删改查实现:
(一)增
import pymysql
import time
config={
"host":"127.0.0.1",
"user":"root",
"password":"Aa@123",
"database":"mydb"
}
db = pymysql.connect(**config)
cursor = db.cursor()
sql="insert into member(username,password,regtime) values(%s,%s,%s)"
res=cursor.execute(sql,('zhiyuan','123',time.time()))
print(res)
db.commit()
cursor.close()
db.close()
如果想获取刚刚插入的id值,可以在收尾(文末解释)之前进行如下操作:
lastid=cursor.lastrowid
print(lastid)
(二)删
import pymysql
config={
"host":"127.0.0.1",
"user":"root",
"password":"Aa@123",
"database":"mydb"
}
db = pymysql.connect(**config)
cursor = db.cursor()
##删除id=7的那一行数据
sql="delete from member where id=%s"
res=cursor.execute(sql,7)
if res:
print('ok')
else:
print('fail')
db.commit()
cursor.close()
db.close()
(三)改
import pymysql
import time
config={
"host":"127.0.0.1",
"user":"root",
"password":"Aa@123",
"database":"mydb"
}
db = pymysql.connect(**config)
cursor = db.cursor()
##把id为5的那一行的username password进行修改
sql="update member set username=%s,password=%s where id=%s"
res=cursor.execute(sql,('user5','456',5))
print(res)
db.commit()
cursor.close()
db.close()
(四)查
import pymysql
config={
"host":"127.0.0.1",
"user":"root",
"password":"Aa@123",
"database":"mydb"
}
db = pymysql.connect(**config)
cursor = db.cursor()
sql="select * from member"
cursor.execute(sql)
rows=cursor.fetchall()
for row in rows:
s=f'the id is {row[0]},my name is {row[1]}'
print(s)
db.commit()
cursor.close()
db.close()
注:结尾指的是下面几行代码:
db.commit()
cursor.close()
db.close()
commit的作用是把刚刚执行的代码效果进行保存。
即不写commit的时候,不会对修改的内容进行保存。
我们下期再见!