精华内容
下载资源
问答
  • Python3连接MySQL数据库及基本操作
    2021-08-01 02:19:44

    一、起因
    做接口测试,需要提前在数据库插入预先准备好的测试数据,故,笔者做整理出用Python3连接MySQL数据库及其基本的操作法方法

    二、说 明
    Python3连接MySQL数据库使用到的第三方库为:PyMySQL,当然,安装也很简单

    # 直接pip安装即可
    pip install PyMySQL
    

    三、使 用
    1.Python3连接连接数据库

    
    ```python
    #!/usr/bin/python
    # coding=utf-8
    # 导入pymysql库
    from pymysql import connect
    
    try:
        conn = connect(
            host='10.*.*.***',
            port=3306,
            user='user name',
            password='user passwd',
            db='database',
            charset='utf8')
        cursor = conn.cursor()
    except Exception as e:
        print(e)
    else:
        print('Connect Success:%s' % cursor)
    
    # result
    >> Connect Success:<pymysql.cursors.Cursor object at 0x000002BB65E0D828>
    
    

    ``
    2.数据库基本操作:增、删、改、查
    实际上只需要定义一个执行SQL的方法,具体运行对应的增删改查SQL语句即可

    #!/usr/bin/python
    # coding=utf-8
    # 导入pymysql库
    from pymysql import connect
    
    ......
    # 连接数据库
    try:
        conn = connect()
    ......
    
    def execute_sql(command, sql):
        """
        查询数据库数据
        :param command:
        :param sql:
        :return:
        """
        if command in ('SELECT', 'select'):
            # 如果为查询指令
            sql = sql.encode('utf-8')
            try:
                cursor.execute(sql)
                result = cursor.fetchall()
                return result
            except Exception as e:
                print(e)
            finally:
                conn.close()
        elif command in ('delete', 'DELETE', 'update', 'UPDATE', 'insert', 'INSERT'):
            # 如果为增删改
            sql = sql.encode('utf-8')
            try:
                cursor.execute(sql)
                conn.commit()
            except Exception as e:
               # 如果失败则回滚
                conn.rollback()
                print(e)
            finally:
                conn.close()
        else:
            print('Command Error!')
    
    if __name__ == '__main__':
    
        sel_sql = 'SELECT * FROM tb_user WHERE phone = "182********";'
        print(execute_sql('select', sel_sql))
    
    

    四、最 后
    撒花~~~~结束~

    更多相关内容
  • 本文实例为大家分享了python3连接MySQL数据库的具体代码,供大家参考,具体内容如下 #python3连接MySQL实例 import pymysql """导入连接MySQL需要的包,没有安装pymysql需要先安装 使用命令行切换到python的安装...
  • 主要介绍了linux下python3连接mysql数据库问题,需要的朋友可以参考下
  • 本文实例为大家分享了python远程连接MySQL数据库的具体代码,供大家参考,具体内容如下 连接数据库 这里默认大家都已经配置安装好 MySQL 和 Python 的MySQL 模块,且默认大家的DB内表和访问账号权限均已设置无误,...
  • 本篇为python连接数据库的详细说明,如果继续用python连接数据库,请看这篇模板文章python3连接MySQL数据库模板 python3连接MySQL数据库我们需要安装pymysql pip install pymysql 安装好后直接import pymysql就可以...

    本篇为python连接数据库的详细说明,如果急需用python连接数据库,请看这篇模板文章python3连接MySQL数据库模板
    python3连接MySQL数据库我们需要安装pymysql

    pip install pymysql
    

    安装好后直接import pymysql就可以导入第三方库

    连接数据库

    conn = pymysql.connect(
    	host="localhost",  # 指示host表明是本地MySQL还是远程
        user="root",  # 用户名
        password="root",  # 密码
        db="db4",  # 要连接的数据库名
        charset="utf8mb4",  # 指定字符集,可以解决中文乱码
        cursorclass=pymysql.cursors.DictCursor  # 固定写法,类似于jdbc里边的加载驱动
    )
    

    数据库增删改查(简单写法)
    在连接了数据库之后我们就要进行数据库的增删改查

    """
    查
    """
    sql = "select * from user"
    
    cursor = conn.cursor()  # 创建一个名为cursor的指针对象
    result = cursor.execute(sql)  # 执行查询操作,返回的result是受影响的行数
    
    data = cursor.fetchone()  #该方法是获取数据库结果的第一条数据,用元祖表示,若没有则是null (在python中用None表示)
    datas = cursor.fetchall()  # 该方法得到查询的所有结果,用元祖表示出来
    
    # 进行数据处理,数据处理完就可以关闭指针和链接
    curosr.close()
    conn.close()
    
    '''
    如果sql语句中有可变的参数可以进行一下方式的处理
    '''
    sql = "select * from user where id = %s" % 23  # python的字符串处理
    
    '''
    不过这种处理方式容易产生sql注入问题
    execute()这个方法其实留有参数的位置,execute(sql语句, 参数位置)
    所以我们可以写作如下
    '''
    
    sql = "select * from user where id = %s and username = %s"
    cursor = conn.cursor()
    result = cursor.execute(sql, (12, 'zhangsan'))
    # 这样就可以有效防止sql注入,或者我们也可以写做如下
    
    sql = cursor.mogrify(select * from user where id = %s and username=%s, (12, 'zhangsan'))
    cursor = conn.cursor()
    result = cursor.execute(sql)
    
    """
    增
    """
    conn = pymysql.connect(
    	host="localhost",
        user="root",
        password="root",
        db="db4", 
        charset="utf8mb4",
        cursorclass=pymysql.cursors.DictCursor
    )
    
    cursor = conn.cursor()
    
    sql = "insert into user (username, password) values(%s, %s)"
    
    result = cursor.execute(sql, ("zhangsan", "123456"))
    
    conn.commit()  ''' 注意这里要提交事务,才可以插入成功 '''
    
    cursor.close()
    conn.close()
    '''值得一提的是。pymysql还提供了executemany()这个神奇的方法,可以一次插入很多条数据'''
    '''如下所示'''
    
    sql = "insert into user (username, password) values(%s, %s)"
    params = [('zhanshen','123'), ('lemon', '123'), ('wangsi', '1234')]
    result = cursor.executemany(sql, params)
    cursor.close()
    conn.close()
    '''这里的params可以是一个大列表,里边是一个个的元祖参数,或者也可以是一个大元祖,里边是元祖参数'''
    params = cursor.
    
    """
    改
    """
    conn = pymysql.connect(
    	host="localhost",
        user="root",
        password="root",
        db="db4", 
        charset="utf8mb4",
        cursorclass=pymysql.cursors.DictCursor
    )
    
    cursor = conn.cursor()
    
    sql = "update user set password = %s where username = %s"
    
    result = cursor.execute(sql, ("zhangsan", "123456"))
    
    conn.commit()  
    
    cursor.close()
    conn.close()
    ''' 这里并没有什么特别需要注意的,和insert方法一样,删也是一个道理(偷懒省去,滑稽) '''
    

    下面我们可以用with as来改善代码

    conn = pymysql.connect(
    	host="localhost",
        user="root",
        password="root",
        db="db4", 
        charset="utf8mb4",
        cursorclass=pymysql.cursors.DictCursor
    )
    
    try:
    	with conn.cursor() as cursor:
    		sql = "select * from user"
    		result = cursor.execute(sql)
    		print(result)
    	
    	with conn.cursor() as cursor:
    		sql = "insert into user (username, password) values (%s, %s)"
    		result = cursor.execute(sql, ('zhanshen', '123'))
    		conn.commit()
    finally:
    	conn.close()
    '''有木有发现用了with as就可以不用关闭cursor,因为with as会自动帮我们关闭'''
    
    
    展开全文
  • Python3连接MySQL数据库.docx
  • 主要为大家详细介绍了python远程连接服务器MySQL数据库,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
  • 本例子使用的python3.7,PyMySQL0.9.3版本,主要是讲解python如何连接mysql数据库,并对数据库进行查询,增删改等操作,本例中封装了一个基础的mysql数据库连接类,主要是用于当项目中存在多个数据库时,可通过传入...
  • 主要介绍了Python实现连接MySql数据库及增删改查操作,结合实例形式详细分析了Python安装PyMySQL模块及使用PyMySQL模块进行mysql数据库的连接、增删改查等相关操作技巧,需要的朋友可以参考下
  • 通过python编写代码连接MySQL数据库,包括数据库和数据表的创建。
  • 通过python脚本连接mysql数据库, 并执行mysql数据库语句,工具类。
  • python3连接MySQL数据库

    千次阅读 2017-06-01 15:43:04
    Python3 支持用 pymysql 模块来链接数据库 1、pymysql安装 windows下:pip install pymysql 直接安装 官方文档:http://www.pymssql.org/en/stable/ 2、实现思路 和用C++访问数据库方法基本...

    环境:python 3.6.1 + mysql 5.1

    Python3 支持用 pymysql 模块来链接数据库


    1、pymysql安装
    windows下: pip install pymysql 直接安装

    2、实现思路
    和用C++访问数据库方法基本相同
    A. 通过pymysql模块的方法,与数据库建立连接
    B. 编写SQL语句
    C. 通过连接的返回的数据库对象,调用相应方法执行SQL语句
    D. 读取数据库返回的数据(即缓存区中的数据)
    E. 对相应的返回数据进行操作
    F. 关闭数据库对象,关闭数据库

    3、查询语句执行流程图:


    4、增删改语句执行流程图:


    5、事务:访问和更新数据库的一个程序执行单元
    - 原子性:事务中包括的操作要么做,要么都不做(捆绑不可分割)
    - 一致性:事务必须使数据库从一致性状态变到另一个一致性状态
    - 隔离性:一个事务的执行不能被其他事务干扰
    - 持久性:事务一旦提交,它对数据库的改变就是永久性的

    6、增删改查功能实现代码:
    #导入pymysql模块
    import  pymysql
    
    class MYSQL:
        # 初始化函数,初始化连接列表
        def __init__(self,host,user,pwd,dbname):
            self.host   = host
            self.user   = user
            self.pwd    = pwd
            self.dbname = dbname
    
        # 获取数据库游标对象cursor
        # 游标对象:用于执行查询和获取结果
        def getCursor(self):
    
            # 建立数据库连接
            self.db = pymysql.connect(self.host,self.user,self.pwd,self.dbname)
    
            # 创建游标对象
            cur = self.db.cursor()
    
            # 返回
            return cur
    
        # 查询操作
        def queryOperation(self,sql):
    
            # 建立连接获取游标对象
            cur = self.getCursor()
    
            # 执行SQL语句
            cur.execute(sql)
    
            # 获取数据的行数
            row = cur.rowcount
    
            # 获取查询数据
            # fetch*
            # all 所有数据,one 取结果的一行,many(size),去size行
            dataList = cur.fetchall()
    
            # 关闭游标对象
            cur.close()
    
            # 关闭连接
            self.db.close()
    
            # 返回查询的数据
            return dataList,row
    
        # 删除操作
        def deleteOperation(self,sql):
    
            # 获取游标对象
            cur = self.getCursor()
            try:
                # 执行SQL语句
                cur.execute(sql)
    
                # 正常结束事务
                self.db.commit()
    
            except Exception as e:
                print(e)
    
                # 数据库回滚
                self.db.rollback()
    
            # 关闭游标对象
            cur.close()
    
            # 关闭数据库连接
            self.db.close()
    
        # 数据更新
        def updateOperation(self,sql):
            cur = self.getCursor()
            try:
                cur.execute(sql)
                self.db.commit()
            except Exception as e:
                print(e)
                self.db.rollback()
    
            cur.close()
            self.db.close()
    
        # 添加数据
        def insertOperation(self,sql):
    
            cur = self.getCursor()
            try:
                cur.execute(sql)
                self.db.commit()
            except Exception as e:
                print(e)
                self.db.rollback()
    
            cur.close()
            self.db.close()

    正在持续更新,若有错误,欢迎大家指正。

    展开全文
  • #连接数据库测试 import pymysql #打开数据库 db = pymysql.connect(host="localhost",user="root",password="root",db="test") #使用cursor()方法获取操作游标 cur = db.cursor() #查询操作 sql = "select * from ...
  • 主要介绍了Python3实现的Mysql数据库操作封装类,涉及Python针对mysql数据库连接、查询、更新及关闭连接等相关操作技巧,需要的朋友可以参考下
  • 详述python如何连接MySQL数据库

    千次阅读 2021-08-08 18:48:31
    python中使用MySQL的库有两个,分别是:PyMySQL和MySQLdb MySQLdb只支持到python3.4及3.4版本以下的版本 在这里我们使用PyMySQL库 安装PyMySQL库 在命令提示符输入:pip install PyMySQL 查看PyM

    一、实验场景:

    MySQL5.8,
    Navicat Premium 15
    PyCharm 2017.3.2 (Professional Edition)
    Windows 10
    Anaconda3-5.0.1

    二、连接方式:

    • 前情须知

    python中使用MySQL的库有两个,分别是:PyMySQLMySQLdb
    MySQLdb只支持到python3.4及3.4版本以下的版本
    在这里我们使用PyMySQL库

    • 安装PyMySQL库

    在命令提示符输入:pip install PyMySQL
    在这里插入图片描述

    • 查看PyMySQL库的信息

    打开命令提示符,进入自己的python安装硬盘路径,
    比如我这里安装在”E盘“,使用 ”cd. .“ 命令进入E盘。
    输入命令:pip show PyMySQL
    过程如下图
    图片一

    pycharm中连接MySQL的python代码:

    import pymysql
    
    conn=pymysql.connect(host='localhost',port=3306,user='root',passwd='******',db='test',charset='utf8')
    
    cursor=conn.cursor()
    
    print(conn)
    print(cursor)
    
    cursor.close()
    conn.close()
    

    运行结果:
    在这里插入图片描述

    其中,下面代码语句

    pymysql.connect(host='localhost',port=3306,user='root',passwd='******',db='test',charset='utf8')
    

    中的host,port,user,db分别可以在Navicat中找到,passwd是自己安装MySQL的时候设置的密码,这里不做说明,host,port,user,db显示位置如下图所示
    在Navicat软件中点击黄色框所示的"对象",则显示右边的导航栏,里面有我们连接数据库所需要的信息
    pymysql.connect# 解决方案:

    展开全文
  • 主要介绍了python3.6 连接mysql数据库及增删改查操作详解,需要的朋友可以参考下
  • 主要介绍了Python实现Mysql数据库连接池实例详解的相关资料,需要的朋友可以参考下
  • 1、下载安装MySQLdb类库http://www.djangoproject.com/r/python-mysql/2、修改settings.py 配置数据属性复制代码 代码如下:DATABASES = { ‘default’: { ‘ENGINE’: ‘django.db.backends.mysql’, # Add ...
  • 使用python连接mysql数据库的源代码文件,很好的代码实现资料
  • python连接mysql数据库,简单的例子,需要先安装pythone3.0、pymysql模块、mysql数据库才能运行
  • python | 连接MySQL数据库的简单方法

    千次阅读 2021-12-21 15:16:34
    进行Python连接mysql数据库之前,需要先安装一下pymysql。 直接在终端执行下面的命令即可。 pip install PyMySQL 2.测试是否能连接成功 以下代码实现了连接到一个database,并选择了其中一个表查询所有数据。 ...
  • python3连接mysql数据库有多种方式,常用的方法有pymysql 和mysql-connector两种,本文使用mysql-connector方式进行python连接mysql数据库。 一、安装mysql-connector 在这里介绍一种快速安装mysql-connector的方法...
  • Python3连接mysql

    2018-11-11 21:17:54
    使用Python3连接mysql数据时的常规操作和一些遇到的问题解决
  • 这是一篇介绍python连接和使用mysql数据库的文档,介绍了python对mysql数据库的insert、update、delete等基本操作。
  • 本文实例为大家分享了Python读取MySQL数据库表数据的具体代码,供大家参考,具体内容如下 环境:Python 3.6 ,Window 64bit 目的:从MySQL数据库读取目标表数据,并处理 代码: # -*- coding: utf-8 -*- import ...
  • 主要介绍了Python实现备份MySQL数据库的方法,涉及Python针对mysql数据库连接及基于mysqldump命令操作数据库备份的相关实现技巧,需要的朋友可以参考下
  • Python3连接MySQL数据库

    千次阅读 2016-08-22 09:42:37
    本文我们为大家介绍 Python3 使用 PyMySQL 连接数据库,并实现简单的增删改查。什么是 PyMySQL?PyMySQL 是在 Python3.x 版本中用于连接 MySQL 服务器的一个库,Python2中则使用mysqldb。PyMySQL 遵循 Python 数据库...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 133,714
精华内容 53,485
关键字:

python3连接mysql数据库

mysql 订阅