【Python】python与MySQL的链接——pymysql

PyMysql模块的简单使用

可参考链接:https://blog.csdn.net/qq_43102443/article/details/107394794

1. pymysql模块安装
pip install -i https://pypi.tuna.tsinghua.edu.cn/simple pymysql
2. 数据库链接
import pymysql
# 创建链接

# conn = pymysql.connect(
#     host='你的数据库地址',
#     user='用户名',
#     password='密码',
#     database='数据库名',
#     charset='uft8')
conn = pymysql.connect(
    host='192.168.X.XXX',
    port=3306,
    user='XXXXXXX',
    password='XXXXX',
    database='XXXXX',
    charset='utf8')
3. 简单查询
cursor = conn.cursor()

# 定义将要执行的SQL语句
sql1 = 'select field, tablename from quota_table_info'
# 执行SQL语句
cursor.execute(sql1)
# 获取sql语句得到的
# cursor取数据有多种方式
# fetchall()取出所有数据
# fetchone()取出一条数据,并且每调用一次,游标下移,下次调用就会取下一条
# fetchmany(n)可以取n条数据
ret1 = cursor.fetchall()  
# 将获取的数据存储至DF数据框中
df_table_info = pd.DataFrame(ret1,columns=['field','tablename'])

# 定义将要执行的SQL语句
sql2 = 'select field, quotaname from quota_base_info'
# 执行SQL语句
cursor.execute(sql2)
# 获取sql语句得到的
ret2 = cursor.fetchall()
# 将获取的数据存储至DF数据框中
df_base_info = pd.DataFrame(ret2,columns=['field','quotaname'])

cursor.close()
conn.close()
4. 数据插入
4.1 插入多条数据
# 获取一个光标
cursor = conn.cursor()
 
# 定义要执行的sql语句
sql = 'insert into userinfo(user,pwd) values(%s,%s);'
data = [
    ('july', '147'),
    ('june', '258'),
    ('marin', '369')
]
# 拼接并执行sql语句
cursor.executemany(sql, data)
 
# 涉及写操作要注意提交
conn.commit()
 
# 关闭连接
cursor.close()
conn.close()
4.2 插入单条数据
cursor =conn.cursor()  #获取一个光标
sql ='insert into userinfo (user,pwd) values (%s,%s);'
 
name = 'wuli'
pwd = '123456789'
cursor.execute(sql, [name, pwd])
conn.commit()
cursor.close()
conn.close()
4.3 获取最新插入的数据
# 获取一个光标
cursor = conn.cursor()
# 定义将要执行的SQL语句
sql = "insert into userinfo (user, pwd) values (%s, %s);"
name = "wuli"
pwd = "123456789"
# 并执行SQL语句
cursor.execute(sql, [name, pwd])
# 涉及写操作注意要提交
conn.commit()
# 关闭连接
 
# 获取最新的那一条数据的ID
last_id = cursor.lastrowid
print("最后一条数据的ID是:", last_id)
 
cursor.close()
conn.close()
4.4 删除数据

# 获取一个光标
cursor = conn.cursor()
# 定义将要执行的SQL语句
sql = "delete from userinfo where user=%s;"
name = "june"
# 拼接并执行SQL语句
cursor.execute(sql, [name])
# 涉及写操作注意要提交
conn.commit()
# 关闭连接
 
cursor.close()
conn.close()
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值