Python:pymysql应用

it2026-06-05  5

安装python包

python相关的软件包数量庞大,python标准包没有包括全部可用的包python官方支持的软件包站点:https://pypi.org/安装python包可以使用pip。yum用于安装rpm包,pip用于安装python包pip可以在线安装装软件包,也可以安装本地包在线安装时,默认将会到pypi官方站点安装,速度慢。配置使用国内镜像站点安装python包 [root@localhost nsd2020]# mkdir ~/.pip [root@localhost nsd2020]# vim ~/.pip/pip.conf [global] index-url = http://mirrors.aliyun.com/pypi/simple/ [install] trusted-host=mirrors.aliyun.com # 在线安装wget / pymysql [root@localhost nsd2020]# pip3 install wget [root@localhost nsd2020]# pip3 install pymysql 本地安装python包。需事先在http://pypi.org上下载 # 本地安装pymysql [root@localhost software]# tar xf zzg_pypkgs.tar.gz [root@localhost software]# cd zzg_pypkgs/ [root@localhost zzg_pypkgs]# pip3 install pymysql_pkgs/* pymysql_pkgs/*.tar.gz 查看安装的额外的包 [root@localhost ~]# pip3 freeze asn1crypto==0.24.0 cffi==1.11.5 cryptography==2.4.2 idna==2.7 pycparser==2.19 PyMySQL==0.9.2 six==1.11.0 wget==3.2

pymysql应用

安装mariadb-server或mysql-server [root@localhost ~]# yum install -y mariadb-server [root@localhost ~]# systemctl start mariadb [root@localhost ~]# systemctl enable mariadb [root@localhost ~]# mysqladmin password tedu.cn [root@localhost ~]# mysql -uroot -ptedu.cn MariaDB [(none)]> CREATE DATABASE nsd2005 DEFAULT CHARSET utf8mb4; 操作 # py_mysql.py import pymysql # 创建到数据库的连接 conn = pymysql.connect( host='localhost', user='root', password='密码', db='database', charset='utf8mb4', ) # 创建游标。游标像文件对象一样,通过文件对象对文件读写;通过游标对数据库进行增删改查 cursor = conn.cursor() # 编写sql语句 create_dep = """CREATE TABLE departments( id INT, dep_name VARCHAR (20), PRIMARY KEY(id) )""" # 执行sql语句 cursor.execute(create_dep) # 确认 conn.commit() # 关闭 cursor.close() conn.close() # pymysql_crud.py # create / retrieve / update / delete import pymysql # 创建到数据库的连接 conn = pymysql.connect( host='localhost', user='root', password='密码', db='database', charset='utf8mb4', ) # 创建游标。游标像文件对象一样,通过文件对象对文件读写;通过游标对数据库进行增删改查 cursor = conn.cursor() ############################################ # 编写sql语句 # insert1 = "INSERT INTO departments VALUES(%s, %s)" # 插入一行数据 # cursor.execute(insert1, (1, '人事部')) # 插入多行数据 # cursor.executemany(insert1, [(2, '运维部'), (3, '开发部'), (4, '测试部'), (5, '财务部')]) ############################################ # 查询 # select1 = "SELECT id, dep_name FROM departments" # cursor.execute(select1) # result1 = cursor.fetchone() # 取出一行数据 # result2 = cursor.fetchmany(2) # 继续取出2行数据 # result3 = cursor.fetchall() # 继续取出剩余全部数据 # print(result1) # print('*' * 30) # print(result2) # print('*' * 30) # print(result3) ############################################ # 修改 # update1 = 'UPDATE departments SET dep_name=%s WHERE dep_name=%s' # cursor.execute(update1, ('人力资源部', '人事部')) # select2 = 'SELECT id, dep_name FROM departments WHERE dep_name=%s' # cursor.execute(select2, ('人力资源部',)) # print(cursor.fetchall()) ############################################ # 删除 delete1 = 'DELETE FROM departments WHERE id=%s' cursor.execute(delete1, (5,)) ############################################ # 确认 conn.commit() # 关闭 cursor.close() conn.close()
最新回复(0)