python连接数据库
python最基础连接mysql数据库的方式
·
打开数据库

数据准备
create database class;
use class;
create table student(id int(4),name varchar(11));
insert into student value(1,'aaa');
insert into student value(2,'aafa');
基础代码的实现
# 导入mysql的包
import pymysql
# 创建连接对象
conn = pymysql.connect(host="localhost", port=3306, user="root", password="你们自己的密码", database="class", charset="utf8")
# 获取游标对象
cs = conn.cursor()
# pymysql完成数据的查询操作
sql = "select * from student;"
# 这里获取的是sql影响的行数
# content = cs.execute(sql)
# print(content)
cs.execute(sql)
content = cs.fetchone()
print(content)
content = cs.fetchall()
print(content)
# 关闭游标和关闭连接
cs.close()
conn.close()
进阶版增删改查
# 导入mysql的包
import pymysql
# 创建连接对象
conn = pymysql.connect(host="localhost", port=3306, user="root", password="你们自己的密码", database="class", charset="utf8")
# 获取游标对象
cs = conn.cursor()
# pymysql完成数据的查询操作,这里面增删改查都可以
sql = "update student set name = '我不知道' where id = 1;"
cs.execute(sql)
sql = "select * from student;"
cs.execute(sql)
content = cs.fetchall()
for i in content:
print(i)
# 因为代码的操作在mysql相当与一个事务,所以需要被提交
conn.commit()
# 关闭操作
cs.close()
conn.close()
sql注入的注意事项(安全方式与不安全方式)
# 导入mysql的包
import pymysql
# 创建连接对象
conn = pymysql.connect(host="localhost", port=3306, user="root", password="你们自己的密码", database="class", charset="utf8")
# 获取游标对象
cs = conn.cursor()
# 不安全的方式
# 根据id查询学生信息
# find_name = input("请输入您要查询的学生姓名:")
# sql = "select * from students where name='%s'" % find_name
# # 显示所有的数据
# cs.execute(sql)
# content = cs.fetchall()
# for i in content:
# print(i)
# 安全的方式
# 根据id查询学生信息
find_name = input("请输入您要查询的学生姓名:")
sql = "select * from student where name=%s;"
# 显示所有的数据
cs.execute(sql, [find_name])
context = cs.fetchall()
for i in context:
print(i)
# 关闭游标和连接
cs.close()
conn.close()
更多推荐




所有评论(0)