前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Python每天五分钟-操作MySQL(PyMySQL)

Python每天五分钟-操作MySQL(PyMySQL)

作者头像
用户2475223
发布2019-12-17 16:02:25
9600
发布2019-12-17 16:02:25
举报
文章被收录于专栏:codersamcodersam

了解了mysql-connector驱动,再来了解一下PyMySQL。

mysql-connector和PyMySQL的区别

  • mysql-connector:是由MySQL官方提供的拓展,与MySQLDB不兼容,效率慢(在py3.6版本比较快)
  • PyMySQL:兼容Py2版本,比mysql-connector快,纯py编写(还是慢)
  • MySQLClient:Django推荐的库。 原始MySQLdb的友好分支,希望有一天合并回来最快的实现,因为它是基于C的。 与MySQLdb最兼容,因为它是一个fork Debian和Ubuntu使用它来提供python-mysqldb和python3-mysqldb包。

综上所述,选择库的时候要根据公司的开发环境来做取舍,没有最好的只有更适合当前项目的。

创建数据表

import pymysql
# 创建数据库连接 数据库ip,用户名,密码,数据库名
db = pymysql.connect('localhost', 'root', 'root', 'pytest')
# 使用 cursor() 方法创建一个游标对象 cursor
cursor = db.cursor()
# print(cursor)
cursor.execute("DROP TABLE IF EXISTS user")
cursor.execute("""CREATE TABLE user (
`id` int(11) NOT NULL AUTO_INCREMENT,
`name` int(10) NOT NULL DEFAULT 0,
`sex` tinyint(1) NOT NULL DEFAULT 0,
`age` smallint(5) NOT NULL DEFAULT 0,
PRIMARY KEY (`id`)
)ENGINE=InnoDB
DEFAULT CHARACTER SET=utf8; """)
# 关闭连接
db.close()

数据操作

import pymysql
# 创建数据库连接 数据库ip,用户名,密码,数据库名
db = pymysql.connect('localhost', 'root', 'root', 'pytest')
# 使用 cursor() 方法创建一个游标对象 cursor
cursor = db.cursor()
sql = "INSERT INTO `user` (`name`, `sex`, `age`) VALUES ('li', '0', '12')"
cursor.execute(sql) # 与mysql.connecter 相同的是 pymysql也会自动创建事物提交。  cursor.executemany(sql, data)同样是插入多条数据
db.commit() # 提交事物
print(cursor.lastrowid) # 获取刚刚插入的主键id
# 关闭连接
db.close()
本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2019年6月29日,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • mysql-connector和PyMySQL的区别
  • 创建数据表
  • 数据操作
相关产品与服务
云数据库 SQL Server
腾讯云数据库 SQL Server (TencentDB for SQL Server)是业界最常用的商用数据库之一,对基于 Windows 架构的应用程序具有完美的支持。TencentDB for SQL Server 拥有微软正版授权,可持续为用户提供最新的功能,避免未授权使用软件的风险。具有即开即用、稳定可靠、安全运行、弹性扩缩等特点。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档