Python操作MySQL
Posted carle
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Python操作MySQL相关的知识,希望对你有一定的参考价值。
第一步:在pycharm中安装pymysql → file->setting->project->project interperter,双击右侧出现的pip,弹出安装包,搜索pymysql->选择第一个->Install Package
出现底部绿色字体说明导入成功,如图所示
一、使用操作
执行MySQL:
1、增、删、改
import pymysql
usr=input("请输入用户名:")
pwd=input("请输入密码:")
conn=pymysql.connection(host="localhost",user="用户名",password="密码",database="数据库名")
cursor=conn.cursor()
sql="insert into userinfo(name,password) values(%(u)s,%(p)s)"
ret=cursor.execute(sql,{‘u‘:usr,‘p‘:pwd}) # 返回被影响的条数
// ret=cursor.executemany(sql,[{‘u‘:usr1,‘p‘:pwd1},{‘u‘:usr2,‘p‘:pwd2},{‘u‘:usr3,‘p‘:pwd3}]) # 批量插入数据,一般只用于插入,更新和删除最好不用
conn.cimmit() # 将操作提交到数据库
cursor.close()
conn.close()
注意事项:
a、在新插入数据的时候若想获取数据自增ID,则可用print(cursor.lastrowid)得到最后一条数据的自增ID。
b、
c、
2、查
import pymysql
usr=input("请输入用户名:")
pwd=input("请输入密码:")
conn=pymysql.connection(host="localhost",user="用户名",password="密码",database="数据库名")
cursor=conn.cursor(cursor=pymysql.cursors.DictCursor) # 可以设置成以字典的形式输出结果
sql="select * from userinfo where name=%(u)s and password=%(p)s"
ret=cursor.execute(sql,{‘u‘:usr,‘p‘:pwd}) # 此时生成新表,并返回被影响的条数
result=cursor.fetchone() # 取上表中的第一行数据
// result=cursor.fetchmany(n) # 取上表中的前n行数据
// result=cursor.fetchall() # 取上表中的所有行数据
if result:
print("登录成功!")
cursor.close()
conn.close()
注意事项:
a、sql的语句中可能会出现SQL注入现象,解决办法是不要擅自进行字符串拼接,用execute函数来进行自动拼接即可
b、在fetch数据时生成的表中,可以使用cursor.scroll(num,mode)来移动游标的位置,如
(1)、cursor.scroll(1,mode=‘relative‘) # 相对当前位置移动
(2)、cursor.scroll(1,mode=‘relative‘) # 相对绝对位置移动
# 若超过下标,则会报错
c、
以上是关于Python操作MySQL的主要内容,如果未能解决你的问题,请参考以下文章
python 基础-- 使用 MySQLdb 操作 MySQL 或使用连接池 DBUtils.PooledDB 操作 MySQL
python 基础-- 使用 MySQLdb 操作 MySQL 或使用连接池 DBUtils.PooledDB 操作 MySQL