使用pymysql连接mysql

安装pymysql

pymysql安装可以通过两种方式

使用pip安装

首先简单说一下pip的使用方法

获取帮助
pip --help
升级 pip
pip install -U pip
安装包
pip install SomePackage
卸载包
pip uninstall SomePackage
升级指定的包
pip install -U SomePackage
搜索包
pip search SomePackage
查看指定包的详细信息
pip show -f SomePackage
列出已安装的包
pip freeze or pip list
查看可升级的包
pip list -o

所以安装pymysql只需要在cmd中执行pip install pymysql就可以了。

在pycharm中安装

依次点击[File] >> [settings] >> [Project: python] >> [Project Interpreter] >>+
之后搜索pymysql点击安装。

连接mysql

conn=pymysql.connect(host="127.0.0.1",port=3306,user="root",passwd="000000",db="db1",charset="utf8")

执行sql语句

cursor = conn.cursor()创建游标
effect_row = cursor.execute("sql语句") #返回的是受影响的行数
effect_row = cursor.execute("select * from tb1 where id = %s", (15,)) #使用通配符
effect_row = cursor.executemany("insert into tb1(id,name)values(%s,%s)", [(16,"sfencs"),(17,"Tom")])#插入多条数据
conn.commit()#执行有关改变数据库内容的操作后需要加上,相当于提交数据

获取相关数据

new_id = cursor.lastrowid#插入语句执行后吗,获得该语句的自增id
row_1 = cursor.fetchone()#查询语句执行后,获取第一行数据,获取的数据是元组类型
row_n = cursor.fetchmany(n)#获取前n行数据((1, 'sfencs'), (2, 'tom'))
row_all = cursor.fetchall()#获取所有查询到的数据

其他

移动游标

通过移动游标来fetch想要的数据

cursor.scroll(1,mode='relative') # 相对当前位置移动
cursor.scroll(2,mode='absolute') # 相对绝对位置移动
改变fetch获得的数据类型

默认是以元组形式获得,但也可以改变为字典形式

cursor = conn.cursor(cursor=pymysql.cursors.DictCursor)#获得游标
cursor.execute("select * from tb1")
row_all = cursor.fetchall()#[{'id': 1, 'name': 'sfencs'}, {'id': 2, 'name': 'tom'}, {'id': 3, 'name': 'Jerry'}]

关闭连接

# 关闭游标
cursor.close()
# 关闭连接
conn.close()

python基础学习24----使用pymysql连接mysql的更多相关文章

  1. R基础学习(一)-- 连接mysql数据库

    测试环境:win10+RStudio (1)在Console加载两个插件 >install.packages('DBI') Installing package into ‘C:/Users/l ...

  2. Python 3.2: 使用pymysql连接Mysql

    在python 3.2 中连接MYSQL的方式有很多种,例如使用mysqldb,pymysql.本文主要介绍使用Pymysql连接MYSQL的步骤 1        安装pymysql ·       ...

  3. 0003.5-20180422-自动化第四章-python基础学习笔记--脚本

    0003.5-20180422-自动化第四章-python基础学习笔记--脚本 1-shopping """ v = [ {"name": " ...

  4. Python3中使用PyMySQL连接Mysql

    Python3中使用PyMySQL连接Mysql 在Python2中连接Mysql数据库用的是MySQLdb,在Python3中连接Mysql数据库用的是PyMySQL,因为MySQLdb不支持Pyt ...

  5. Day1 Python基础学习

    一.编程语言分类 1.简介 机器语言:站在计算机的角度,说计算机能听懂的语言,那就是直接用二进制编程,直接操作硬件 汇编语言:站在计算机的角度,简写的英文标识符取代二进制去编写程序,本质仍然是直接操作 ...

  6. Python3.x使用PyMysql连接MySQL数据库

    Python3.x使用PyMysql连接MySQL数据库 由于Python3.x不向前兼容,导致Python2.x中的很多库在Python3.x中无法使用,例如Mysqldb,我前几天写了一篇博客Py ...

  7. Day1 Python基础学习——概述、基本数据类型、流程控制

    一.Python基础学习 一.编程语言分类 1.简介 机器语言:站在计算机的角度,说计算机能听懂的语言,那就是直接用二进制编程,直接操作硬件 汇编语言:站在计算机的角度,简写的英文标识符取代二进制去编 ...

  8. Python 基础学习 总结篇

    Python 基础学习总结 先附上所有的章节: Python学习(一)安装.环境配置及IDE推荐 Python学习(二)Python 简介 Python学习(三)流程控制 Python学习(四)数据结 ...

  9. Python3.x:使用PyMysql连接Mysql数据库

    Python3.x:使用PyMysql连接Mysql数据库 Python3.x完全不向前兼容,导致Python2.x中可以正常使用的库,到了Python3就用不了: 比如说mysqldb,目前MySQ ...

随机推荐

  1. JavaScript事件-this传递

    <!DOCTYPE html> <html> <head> <meta http-equiv="Content-Type" content ...

  2. C++为啥要使用new

    1.为什么要有new? 为什么要有new?为什么要动态创建对象?为什么有时候不用new,有时候又用new,比如: // Cocos2d-x3.x的Value类,大家都很熟悉了 Value v = Va ...

  3. WPF TreeView 选择事件执行两次,获取TreeView的父节点的解决方法

    1.TreeView选择事件执行两次 Very often, we need to execute some code in SelectedItemChanged depending on the ...

  4. 设置ul水平居中

    <div class="jdcg-menu-nav"> <ul> <li>基本信息</li> <li>阶段资料</ ...

  5. ubuntu 上安装ssh

    1. 执行 sudo apt-get update 2. 安装 sudo apt-get install openssh-server 3.查看ssh服务状态 sudo service ssh sta ...

  6. JavaScript之String总汇

    一.常用属性 ·length:返回字符串中字符长度 let str = 'asd '; str.length = 1;//无法手动修改,只读 console.log(str.length);//4 二 ...

  7. Mybatis一对一,一对多

    一对一 假如有student表(学生表)和student_card表(学生证表). student表中有一个字段self_card用来查student_card,student_card表中有一个st ...

  8. Java 初/中级面试题及答案【详细】

    1.Java的HashMap是如何工作的? HashMap是一个针对数据结构的键值,每个键都会有相应的值,关键是识别这样的值. HashMap 基于 hashing 原理,我们通过 put ()和 g ...

  9. Codeforces633G(SummerTrainingDay06-I dfs序+线段树+bitset)

    G. Yash And Trees time limit per test:4 seconds memory limit per test:512 megabytes input:standard i ...

  10. 常见Java问题

    1.泛型的好处 保护了类型安全 避免了强制类型转化 2.final关键字的作用 final修饰的属性是常量 final修饰的方法不可被重写 final修饰的类不能被继承,如:String 3.静态变量 ...