python 学习32

pymysql的简单了解

pymsql是python中操作MySQL的模块

安装:在dos命令中输入:pip3 install pymysql;

            pip会自行下载并安装pymysql。

执行pymysql:

#usr/bin/python
#-*-coding:utf-8-*-
#请求mysql数据库的数据
import pymysql

#执行sql
#创建连接
conn=pymysql.connect(host='127.0.0.1',port=3306,user='root',
                     passwd='gyzswan',db='myschool',charset='utf8')
#创建游标
cursor=conn.cursor()

#执行sql,并返回收影响行数
a=cursor.execute('SELECT studentName,phone FROM student')
print(a)
#提交,不然无法保存新建或者修改的数据
conn.commit()
#关闭游标
cursor.close()
#关闭连接
conn.close()

host:用户地址    port:端口    user:mysql账号(默认root)   password:账号密码

db:数据库名   charset:编码集

如上这段代码我们连接了MySQL的myschool数据库,接着我们需要创建一个游标用来标识数据,接着执行SQL语句,从学生表中查询学生姓名与电话号,并返回了影响行数,为14行。最后我们需要提交连接,关闭游标,关闭连接。

查询数据:

#usr/bin/python
#-*-coding:utf-8-*-
import pymysql

conn=pymysql.connect(host='127.0.0.1',port=3306,user='root',passwd='gyzswan',db='myschool',charset='utf8')
cursor=conn.cursor()
cursor.execute('SELECT studentName,phone FROM student')
row_1=cursor.fetchone()    #获取第一条
print(row_1)
row_2=cursor.fetchmany(4)   #获取剩余结果前4条
print(row_2)
row_3=cursor.fetchall()   #获取剩余的所有结果
print(row_3)
conn.commit()
cursor.close()
conn.close()

fetchone()  -->获取一条数据

fetchmany(x) --> 获取剩余数据的前x条

fetchall()  --> 获取剩余的所有结果

移动游标

#注:在fetch数据时按照顺序进行,可以使用cursor.scroll(num,mode)来移动游标位置,如:
 
cursor.scroll(1,mode='relative') # 相对当前位置移动
cursor.scroll(2,mode='absolute') # 相对绝对位置移动

fetch数据类型

获取的fetch数据类型默认是元组类型,如果想更改为字典数据类型

#usr/bin/python
#-*-coding:utf-8-*-
import pymysql

conn=pymysql.connect(host='127.0.0.1',port=3306,user='root',
                     passwd='gyzswan',db='myschool',charset='utf8')
#创建游标
cursor=conn.cursor()
#游标设置为字典类型
cursor = conn.cursor(cursor=pymysql.cursors.DictCursor)
#执行sql,并返回收影响行数
cursor.execute('SELECT studentName,phone FROM student')

row_1=cursor.fetchone()  #获取第一条
print(row_1)

conn.commit()
cursor.close()
conn.close()

只需要在执行SQL语句之前,将游标设为字典类型:cursor=pymysql.cursors.DictCursor


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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值