目录
一、创建Connect链接与Cursor对象
二、对数据库进行 *** 作
1、数据的查询
2、数据的增删改
三、关闭Cursor对象与Connect链接
在python中要对mysql数据库进行 *** 作,首先要下载pymysql库,打开cmd,输入以下命令即可
pip install pymysql
python对数据库 *** 作的流程是:
创建Connect链接-->创建Cursor对象-->对数据库进行 *** 作-->关闭Cursor对象-->关闭Connect链接
一、创建Connect链接与Cursor对象
首先我们要导入pymysql库
import pymysql
创建Connect链接与Cursor对象
# 创建Connect链接
conn = pymysql.connect(host="localhost", port=3306, user="数据库用户名",
password="数据库密码", database="要进行 *** 作的数据库名",
charset="utf8")
# 创建Cursor游标对象
cursor = conn.cursor()
二、对数据库进行 *** 作
这里假定我们已经打开了一个exam数据库,exam数据库里面有一张students表。
我们执行sql语句是通过cursor游标对象的execute()方法来实现的,但若是sql语句实现了对数据表中数据的增删改,那么则要用connect链接来进行提交(conn.commit())或回退 *** 作(conn.rollback())
1、数据的查询# ret返回的是执行的行数,与直接在cmd窗口对mysql执行 *** 作时返回的东西类似
sql = "select * from students;"
ret = cursor.execute(sql)
"""
注: 是用cursor游标来查询信息,不是上面的ret
cursor.fetchone(): 查询单条信息
cursor.fetchmany(num): 可以一次查询num条信息
cursor.fetchall(): 一次查询所有信息
"""
for temp in cursor.fetchall():
print(temp)
2、数据的增删改
# 增
sql = """insert into students(name) values("痔疮")"""
cursor.execute(sql) # 打印受影响的行数
# 删
sql = """delete from students where name="痔疮"""";
cursor.execute(sql)
# 改
sql = """update students set name="小王" where id=6;"""
cursor.execute(sql)
# 提交之前的 *** 作,如果之前已经执行过多次的execute,那么就都进行提交
conn.commit()
# conn.rollback() # 对之前的 *** 作进行回退处理
从上面的例子可以看出,执行sql语句都是使用cursor游标对象的execute()方法,查询时也是使用游标对象的方法来返回查询结果,但若是对数据库进行了修改,则需要使用connect链接来进行 *** 作提交或回退。
感兴趣的朋友可以查一下sql注入,这里我就不做过多的赘述了。
三、关闭Cursor对象与Connect链接
# 关闭Cursor游标对象
cursor.close()
# 关闭connect链接
conn.close()
其实第一步与第三步 *** 作都是不变的,主要的就是第二步对数据库的 *** 作。
至此,python *** 作mysql数据库的流程到这里就结束了。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)