第二章实战补充:Python操作Mysql

( 一) 导入pymysql

基础铺垫:pymysql与MySQLdb
  • pymysql–支持py2、py3;
  • MySQLdb–支持python3;
  • django内部默认为MySQLdb,用Python3需修改

代码:
import pymysql

( 二) 创建连接

基础铺垫:
代码:
conn = pymysql.connect(host='127.*.*.*', port=3306, user='root', passwd='****', db='t1')
  • 如果报错,可以在db=’t1’后加,charset=’utf8’

( 三) 创建游标

基础铺垫:游标是什么意思?
  • 类比说明:把数据库比作成一个仓库,数据操作的过程就相当于人去仓库拿东西,到仓库门口第一步是把仓库门打开,相当于创建了数据库连接,第二步就是到仓库里去拿东西(数据),游标就相当于伸手去拿东西,按照顺序从柜子上一层一层的拿东西。所以要去数据库里拿东西,创建连接与创建游标都要创建好。
代码(创建手):
cursor=conn.cursor()
代码(用手去拿东西):
cursor.execute('此处需替换为相应的SQL语句#@数据分析-jacky')
  • excute - 执行

  • SQL语句的基本操作:增、删、改、查;除了“查”以外,均需对创建游标这个过程给予确认,因为python认为它是重要操作。

代码(确认执行的SQL语句-提交):
conn.commit()
  • 数据的增删改都是重要操作,需要确认的代码,查就不用确认commit代码了

( 四) 关闭游标、关闭连接

cursor.close()
conn.close()

( 五) 具体实操-Python 查询 mysql 数据

import pymysql

conn = pymysql.connect(host='127.*.*.*', port=3306, user='root', passwd='****', db='t1')

cursor=conn.cursor()

r=cursor.execute('select * from jacky的表')

#print(r)-- 显示的是受影响的行数,那么如何显示出数据呢?

result=cursor.fetchall()

print(result) #显示的是个元组:(1,‘男’,‘李明’),(2,‘女’,‘Lucy’)
  • fetchall() 取全部
  • fetchone() 取第一行
  • fetchmany(3) 取前三行

    • fetch()相当于文件中的指针(绝对定位、相对定位)
    • fetchmany()一般来说用不到
  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

朱元禄

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值