Python操作Mysql

安装Pymysql:
命令安装:pip instatll pymysql
Pymysql.connect连接数据库:

  • Host:服务器地址
  • user:mysql用户名
  • passwd:mysql密码
  • port:端口号
  • db:数据库的名称
  • charset :编码(utf-8)

基本操作-增删改查
Python操作MySQL的步骤如下:

  • 建立数据库连接
  • 通过 cursor() 创建游标对象(pymysql通过游标来执行sql和获取结果)
  • 使用 execute() 执行sql
  • 获取结果(查询)/提交事务(增删改)
  • 关闭游标
  • 关闭连接

插入数据:

import pymysql
# 连接数据
conn = pymysql.connect(host='XXXX',user='xxxx',passwd='xxxx',port=3306,db='hypnos_catalog2')
# 创建游标
cursor = conn.cursor()
# 新增语句
Insert = "INSERT INTO `user`( `id`、`name`、`pwd`) VALUE (1,'cc','cui');"
# 执行语句
cursor.execute(Insert)
# 提交事物
conn.commit()
# 关闭游标
cursor.close()
# 关闭数据库连接
conn.close()

插入多条数据:

# 插入多个数据时,可以使用"%s"占位符
insert2 = "INSERT INTO `user`( `id`、`name`、`pwd`) VALUE (%s,%s,%s);"
# executemany(query,args)
# query 要执行的sql
# args 用于query的参数值
cursor.executemany(insert2,[(1,'cc''cui'),(2,'zz','zzz')]) #执行批量插入语句

查询语句:
curson提示提供了3种提取数据的方法:fetchone、fetchmany、fetchall.。
示例:fetchone
返回的数据是元组类型,没有时返回None

import pymysql
# 连接数据
conn = pymysql.connect(host='192.168.100.12',user='darcy',passwd='TsRAScf1aTojt1',port=3306,db='hypnos_catalog2')
# 创建游标
cursor = conn.cursor()
# 查询语句
sel = 'SELECT * FROM `faq_custom_scene` ORDER BY `dx_created` DESC  LIMIT 3;'
# 执行语句 fetchone
cursor.execute(sel)

# 只展示结果里的第一条
res = cursor.fetchone()
print(res)
# 将查询的结果一条一条的展示
"""while 1:
    res = cursor.fetchone()
    if res is None:
        break
    print(res)"""
# 关闭游标
cursor.close()
# 关闭数据库连接
conn.close()



示例:fetchmany
从exceute()函数结果中获取游标所在处的size条数据,并以元组的形式返回

import pymysql
# 连接数据
conn = pymysql.connect(host='192.168.100.12',user='darcy',passwd='TsRAScf1aTojt1',port=3306,db='hypnos_catalog2')
# 创建游标
cursor = conn.cursor()
# 查询语句
sel = 'SELECT * FROM `faq_custom_scene` ORDER BY `dx_created` DESC  LIMIT 3;'
# 执行语句
cursor.execute(sel)
# fetchmany
res = cursor.fetchmany(2)
print(res)
# 关闭游标
cursor.close()
# 关闭数据库连接
conn.close()



示例:fetchall
获取游标所在处开始及以下所有的数据,并以元组的形式返回,元组的每一个元素都也是一个由一行数据组成的元组,如果游标所在处没有数据,将返回空元组。执行完这个方法后,游标将移动到数据库表的最后

import pymysql
# 连接数据
conn = pymysql.connect(host='192.168.100.12',user='darcy',passwd='TsRAScf1aTojt1',port=3306,db='hypnos_catalog2')
# 创建游标
cursor = conn.cursor()
# 查询语句
sel = 'SELECT * FROM `faq_custom_scene` ORDER BY `dx_created` DESC  LIMIT 3;'
# 执行语句
cursor.execute(sel)
# fetchall
res = cursor.fetchall()
print("返回数据的长度:",len(res))
print(res)
# 关闭游标
cursor.close()
# 关闭数据库连接
conn.close()

更新数据:

import pymysql
# 连接数据
conn = pymysql.connect(host='192.168.100.12',user='darcy',passwd='TsRAScf1aTojt1',port=3306,db='hypnos_catalog2')
# 创建游标
cursor = conn.cursor()
# 更新语句
Update = 'UPDATE `faq_custom_scene` SET name = "cc" where `id` = 9501;'
# 执行语句
cursor.execute(Update)
cursor.execute('SELECT * FROM `faq_custom_scene` where id = 9501')
res = cursor.fetchone()
print(res)
# 提交事物
conn.commit()
# 关闭游标
cursor.close()
# 关闭数据库连接
conn.close()

删除数据:

import pymysql
# 连接数据
conn = pymysql.connect(host='192.168.100.12',user='darcy',passwd='TsRAScf1aTojt1',port=3306,db='hypnos_catalog2')
# 创建游标
cursor = conn.cursor()
# 新增语句
Delete = "DELETE FROM `faq_custom_scene` WHERE `id` = 9501;;"
# 执行语句
cursor.execute(Delete)
# 提交事物
conn.commit()
# 关闭游标
cursor.close()
# 关闭数据库连接
conn.close()


  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值