利用python连接数据库(pymysql模块使用)

本文介绍了如何使用Python的pymysql模块连接MySQL数据库,包括创建connection对象、理解connection和cursor对象的方法,以及增删改查和事务处理的示例。在实际操作中,需要注意防火墙设置对连接的影响。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

前言


pymysql包 包含了一个基于 PEP-249的纯python的MySQLclient,大多数公共API与mysqlclient和MyAQLdb兼容。

要求

  • Python
    • Cpython:2.7版本或者大于3.5版本
    • PyPy:最新版本
  • MySQL Server:
    • MySQL >=5.5
    • Mariadb >=5.5

安装:
pymysql是第三方模块,可以使用pip、conda等命令安装

pip install pymysql
conda install pymysql

使用pycharm的话除了上面两种安装方式,还可以使用project python 安装第三方模块:

File >> setting >> Project:python >> project interpreter >> 右边 + ,查找pymysql然后install即可

pymysql

先记一个大坑: 由于用的是虚拟机vmvare,忘记关闭firewalld服务,导致一直连接不上去,后面关掉就顺利连接上了。

1.navicat的连接数据库服务,不需要连接ssh
2.封装的TCP协议。服务端直接连接就好了。

创建一个表

CREATE TABLE `reg` (
  `id` int(10) unsigned NOT NULL AUTO_INCREMENT,
  `name` varchar(255) NOT NULL,
  `age` int(10) unsigned NOT NULL,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=15 DEFAULT CHARSET=utf8mb4;

通过navicat打开,它的样子是这样的:


一般流程:
1.创建连接返回值为Connection的实例对象connection连接
2.根据已有的连接对象connection创建curser游标对象
3.执行curser操作的方法
4.提交事务,释放资源

1.创建connection对象

pymysql.connect常用参数说明:

参数 参数类型 含义
host str MySQL服务器端地址
user str MySQL用户名
password str MySQL用户密码
database str 数据库名称
port int MySQL服务端端口号,默认3306
charset str 连接编码

更多参数请查看py源码

import pymysql
from pymysql.cursors import DictCursor

IP = "192.168.48.132"  # mysql所在的服务host
USER = "ammmao"  # mysql用户
PASSWORD = "353231"  # mysql密码
DATABASE = "test"
PORT = 3306  # mysql服务的端口,默认是3306
CHARSET = "utf8"

conn = None
try:
    conn = pymysql.connect(IP,USER,PASSWORD,DATABASE,PORT,charset<
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值