【python】-- pymsql 操作MySQL
pymysql
对MySQL数据库进行简单数据操作python模块主要是:MySQLdb、pymsql,MySQLdb模块主要用于python2.X,而python3.X则使用pymsql,pymysql的使用方法和MySQLdb几乎一样,习惯用MySQLdb的,只需 import MySQLdb 修改为 import pymysql 就可以了
一、安装
pip3 install pymysql
二、基本数据操作
a、增
import pymysql #打开数据库连接
db = pymysql.connect(host="localhost",
user="root",
password="123456",
db="mysql",
port=3306,
charset='utf8',
# 以字典形式展示所查询数据
cursorclass=pymysql.cursors.DictCursor) try:
with db.cursor() as cursor: # 使用cursor()方法获取操作游标
# sql语句
sql = "insert into user(id,username,password) values(4,'liu','1234')"
cursor.execute(sql) # 执行sql语句
#提交
db.commit()
except Exception as e:
print(e)
db.rollback() # 回滚
finally:
db.close() # 关闭连接
b、删
import pymysql #打开数据库连接
db = pymysql.connect(host="localhost",
user="root",
password="123456",
db="mysql",
port=3306,
charset='utf8',
# 以字典形式展示所查询数据
cursorclass=pymysql.cursors.DictCursor) try:
with db.cursor() as cursor: # 使用cursor()方法获取操作游标
# sql语句
sql = "delete from user where id = %d"
cursor.execute(sql %(4)) # 执行sql语句,并向sql语句传递参数
#提交
db.commit()
except Exception as e:
print(e)
db.rollback() # 回滚
finally:
db.close() # 关闭连接
c、查
import pymysql #打开数据库连接
db = pymysql.connect(host="localhost",
user="root",
password="123456",
db="mysql",
port=3306,
charset='utf8',
# 以字典形式展示所查询数据
cursorclass=pymysql.cursors.DictCursor) try:
with db.cursor() as cursor: # 使用cursor()方法获取操作游标
# 查询语句
sql = "select * from user"
cursor.execute(sql) # 执行sql语句
results = cursor.fetchall() # 获取查询的所有记录
print(results)
except Exception as e:
print(e)
finally:
db.close() # 关闭连接
d、改
import pymysql #打开数据库连接
db = pymysql.connect(host="localhost",
user="root",
password="123456",
db="mysql",
port=3306,
charset='utf8',
# 以字典形式展示所查询数据
cursorclass=pymysql.cursors.DictCursor) try:
with db.cursor() as cursor: # 使用cursor()方法获取操作游标
# sql语句
sql = "update user set username = '%s' where id = %d"
cursor.execute(sql % ("hello", 3)) # 执行sql语句, 并传递参数
#提交
db.commit()
except Exception as e:
print(e)
db.rollback() # 回滚
finally:
db.close() # 关闭连接
e、调用自定义函数
import pymysql #打开数据库连接
db = pymysql.connect(host="localhost",
user="root",
password="123456",
db="mysql",
port=3306,
charset='utf8',
# 以字典形式展示所查询数据
cursorclass=pymysql.cursors.DictCursor) try:
with db.cursor() as cursor: # 使用cursor()方法获取操作游标
# 调用自动应函数并传参
cursor.callproc(function_name,args=(data_id,phone,product_id,))
#提交
db.commit()
except Exception as e:
print(e)
db.rollback() # 回滚
finally:
db.close() # 关闭连接
f、 注:
查询数据
# 获取第一行数据
row_1 = cursor.fetchone()
# 获取前n行数据
# row_2 = cursor.fetchmany(3)
# 获取所有数据
# row_3 = cursor.fetchall()
pymysql:源码
【python】-- pymsql 操作MySQL的更多相关文章
- python下操作mysql 之 pymsql
python下操作mysql 之 pymsql pymsql是Python中操作MySQL的模块, 下载安装: pip3 install pymysql 使用操作 1, 执行SQL #!/usr/ ...
- Python中操作mysql的pymysql模块详解
Python中操作mysql的pymysql模块详解 前言 pymsql是Python中操作MySQL的模块,其使用方法和MySQLdb几乎相同.但目前pymysql支持python3.x而后者不支持 ...
- (转)Python中操作mysql的pymysql模块详解
原文:https://www.cnblogs.com/wt11/p/6141225.html https://shockerli.net/post/python3-pymysql/----Python ...
- python数据库操作 - MySQL入门【转】
python数据库操作 - MySQL入门 python学院 2017-02-05 16:22 PyMySQL是Python中操作MySQL的模块,和之前使用的MySQLdb模块基本功能一致,PyMy ...
- day06 python代码操作MySQL
day06 python代码操作MySQL 今日内容 python代码操作MySQL 基于python与MySQL实现用户注册登录 python操作MySQL python 胶水语言.调包侠(贬义词& ...
- python 之操作mysql 数据库实例
对于python操作mysql 数据库,具体的步骤应为: 1. 连接上mysql host 端口号 数据库 账号 密码2. 建立游标3. 执行sql(注意,如果是update,insert,delet ...
- python之操作mysql(一)
使用python操作mysql的思路: 1. 连接数据库:ip,端口号,密码,账号,数据库 2. 建立游标 3.执行sql语句 4.获取执行结果 5.关闭游标,关闭连接 conn = pymysql. ...
- python 安装操作 MySQL 数据库.
以ubuntu和mysql为例 检查自己的机器上面有没有安装数据库 xpower@xpower-CW65S:~$ sudo service mysql start [sudo] xpower 的密码: ...
- Python之 操作 MySQL 数据库
什么是MySQLdb? MySQLdb 是用于Python链接Mysql数据库的接口,它实现了 Python 数据库 API 规范 V2.0,基于 MySQL C API 上建立的. 安装 Pytho ...
随机推荐
- 模拟服务器MockServer之Moco详细介绍
转载:http://blog.csdn.net/vite_s/article/details/54583243 前面一篇介绍了如何用mockito来测试我们的一些异步任务,例如网络请求时候的异步回调. ...
- 重入锁的好搭档:Condition条件(读书笔记)
Condition结构提供了基本方法如下: void await() throws InterruptedException; void awaitUninterruptibly(); long ...
- hdu 3667 /2010哈尔滨赛区H题 费用与流量为非线性关系/费用流
题意: 在一般费用流题目改动:路过某路,每x单位流量须要花费 ai*x^2(ai为给定的系数). 開始的的时候,一看仅仅只是是最后统计费用上在改动罢了,一看例子.发现根本没那么简单(ps:以后每次写程 ...
- 个人观点,说一下对 PHPCMS 的站点架构的看法
PHPCMS应该是国内第一家用MVC架构来写开源PHP产品的,我第一次工作上接触到PHPCMS是在两年前.那个时候对MVC还是不理解,然后由于工作须要,须要改动一下PHPCMS的源代码.拿到代码后.我 ...
- 【VBA】修改Excle的标题
打开Excle的时候,有时候不需要显示Miscrosoft Excle,如下图标记,想把标记内的内容替换为:管理系统 操作代码: Public Sub 修改标题() Application.Capti ...
- 【Java】Java_19递归算法
1.递归算法 A方法调用B方法,我们很容易理解!递归就是:A方法调用A方法!就是自己调用自己,因此我们在设计递归算法时,一定要指明什么时候自己不调用自己.否则,就是个死循环! 1.1递归算法要点 递归 ...
- zabbix监控客户端本地网络的延时状态
配置zabbix客户端配置文件 vim /etc/zabbix/zabbix_agentd.conf 添加 Include=/etc/zabbix/zabbix_agentd.d/ 添加脚本对服务器 ...
- my_interface
import flask,osserver=flask.Flask(__name__) #当前这个python文件,当做一个服务 @server.route('/error',methods=['ge ...
- Delphi 与 C/C++ 数据类型对照表(最新的tokyo)
更新,下面这table为最新的tokyo基本数据类型与C++的对照关系: Delphi to C++ types mapping Go Up to Support for Delphi Data ...
- 高抛低吸T+0操作要领(目前行情短线炒作的必备技能)
最近的行情只能用操蛋来形容,但是危机中不乏机会.现在已经不是之前行情的思路,那着一个股票长线抱着,即使是好的牛股,也经不起目前行情的这 么折腾.所以,现在最适合的操作方式就是高抛低吸.今天低吸保不准明 ...