使用pymysql(使用一)
创建数据表
import pymysql
db = pymysql.connect("localhost","root","","hank")
cursor = db.cursor()
cursor.execute("DROP TABLE IF EXISTS leo")
sql = """CREATE TABLE leo (
FIRST_NAME CHAR(20) NOT NULL,
LAST_NAME CHAR(20),
AGE INT,
SEX CHAR(1),
INCOME FLOAT)"""
cursor.execute(sql)
db.close()
新增数据
import pymysql
db = pymysql.connect("localhost","root","","hank")
cursor = db.cursor()
sql = """INSERT INTO leo(
FIRST_NAME,LAST_NAME,AGE,SEX,INCOME)
VALUES('JOE','B',20,'F',4000) """
try:
#执行sql语句
cursor.execute(sql)
#提交到数据库执行
db.commit()
except:
#如果发生数据库执行
db.rollback()
db.close()
mysql> select * from leo;
+------------+-----------+------+------+--------+
| FIRST_NAME | LAST_NAME | AGE | SEX | INCOME |
+------------+-----------+------+------+--------+
| Mike | A | 30 | M | 6000 |
| JOE | B | 20 | F | 4000 |
+------------+-----------+------+------+--------+
2 rows in set (0.00 sec)
查询
import pymysql
db = pymysql.connect("localhost","root","","hank")
cursor = db.cursor()
sql = "SELECT * FROM leo "
try:
#执行SQL语句
cursor.execute(sql)
#获取所有记录列表
results = cursor.fetchall()
for row in results:
fname = row[0]
lname = row[1]
age = row[2]
sex = row[3]
income = row[4]
#打印结果
print("fname=%s,lname=%s,age=%d,sex=%s,income=%d" % (fname,lname,age,sex,income))
except:
print("Error:unable to fetch data")
fname=Mike,lname=A,age=30,sex=M,income=6000
fname=JOE,lname=B,age=20,sex=F,income=4000
数据库更改
import pymysql
db = pymysql.connect("localhost","root","","hank")
cursor = db.cursor()
sql = "UPDATE leo SET AGE = AGE + 1 WHERE SEX = '%c'" % ('M') #找到sex性别为M的更新其年龄+1
try:
cursor.execute(sql)
db.commit()
except:
db.rollback()
db.close()
mysql> select * from leo;
+------------+-----------+------+------+--------+
| FIRST_NAME | LAST_NAME | AGE | SEX | INCOME |
+------------+-----------+------+------+--------+
| Mike | A | 31 | M | 6000 |
| JOE | B | 20 | F | 4000 |
+------------+-----------+------+------+--------+
2 rows in set (0.00 sec)
删除操作
import pymysql
db = pymysql.connect("localhost","root","","hank")
cursor = db.cursor()
sql = "delete from leo where name = hankleo"
try:
cursor.execute(sql)
db.commit()
except:
db.rollback()
db.close()
使用pymysql(使用一)的更多相关文章
- pyMysql
本篇对于Python操作MySQL主要使用两种方式: 原生模块 pymsql ORM框架 SQLAchemy pymsql pymsql是Python中操作MySQL的模块,其使用方法和MySQLdb ...
- Python 3.x 连接数据库(pymysql 方式)
==================pymysql=================== 由于 MySQLdb 模块还不支持 Python3.x,所以 Python3.x 如果想连接MySQL需要安装 ...
- Python中操作mysql的pymysql模块详解
Python中操作mysql的pymysql模块详解 前言 pymsql是Python中操作MySQL的模块,其使用方法和MySQLdb几乎相同.但目前pymysql支持python3.x而后者不支持 ...
- 杂项之pymysql连接池
杂项之pymysql连接池 本节内容 本文的诞生 连接池及单例模式 多线程提升 协程提升 后记 1.本文的诞生 由于前几天接触了pymysql,在测试数据过程中,使用普通的pymysql插入100W条 ...
- Python3中使用PyMySQL连接Mysql
Python3中使用PyMySQL连接Mysql 在Python2中连接Mysql数据库用的是MySQLdb,在Python3中连接Mysql数据库用的是PyMySQL,因为MySQLdb不支持Pyt ...
- Python之路-python(mysql介绍和安装、pymysql、ORM sqlachemy)
本节内容 1.数据库介绍 2.mysql管理 3.mysql数据类型 4.常用mysql命令 创建数据库 外键 增删改查表 5.事务 6.索引 7.python 操作mysql 8.ORM sqlac ...
- python pymysql和orm
pymsql是Python中操作MySQL的模块,其使用方法和MySQLdb几乎相同. 1. 安装 管理员打开cmd,切换到python的安装路径,进入到Scripts目录下(如:C:\Users\A ...
- python成长之路【第十三篇】:Python操作MySQL之pymysql
对于Python操作MySQL主要使用两种方式: 原生模块 pymsql ORM框架 SQLAchemy pymsql pymsql是Python中操作MySQL的模块,其使用方法和MySQLdb几乎 ...
- (转)pymysql 连接mysql数据库---不支持中文解决
往数据库里插入中文时出现异常:UnicodeEncodeError: 'latin-1' codec can't encode characters 就是编码的问题,pymysql默认的编码是lati ...
- 循序渐进Python3(十)-- 1 -- pymysql
使用pymsql 模块操作数据库 #!/usr/bin/env python , ),()]), user='root', passwd='123456', db='test')# 创建游标curso ...
随机推荐
- Redis缓存使用技巧
缓存能够有效加速应用的访问速度,同时可以降低后端负载,在应用架构中起着至关重要的作用,本文主要介绍缓存使用的一些技巧. 缓存更新策略 LRU/LFU/FIFO算法剔除 场景:数据一致性要求较低 原理: ...
- windows下mongodb基础玩法系列二CURD附加一
windows下mongodb基础玩法系列 windows下mongodb基础玩法系列一介绍与安装 windows下mongodb基础玩法系列二CURD操作(创建.更新.读取和删除) windows下 ...
- InnoDB存储引擎--Innodb Buffer Pool(缓存池)
InnoDB存储引擎--Innodb Buffer Pool(缓存池) Innodb Buffer Pool的概念 InnoDB的Buffer Pool主要用于缓存用户表和索引数据的数据页面.它是一块 ...
- C#基础---浅谈XML读取以及简单的ORM实现
背景: 在开发ASP.NETMVC4 项目中,虽然web.config配置满足了大部分需求,不过对于某些特定业务,我们有时候需要添加新的配置文件来记录配置信息,那么XML文件配置无疑是我们选择的一个方 ...
- Oracle入门《Oracle介绍》第一章1-1
1.Oracle 简介 a.对象关系型的数据库管理系统 (ORDBMS) b.在管理信息系统.企业数据处理.因特网及电子商务等领域使用非常广泛 c.在数据安全性与数据完整性控制方面性能优越 d.跨操作 ...
- MVC 获取控制器名称和Action名称(转载)
MVC在filter中如何获取控制器名称和Action名称 使用ActionExecutingContext对象可以获取控制器名称.Action名称.参数名称以及参数值.路由和Action返回值不 ...
- elasticsearch6.7 05. Document APIs(8)Multi Get API
7.Multi Get API(Multi Get API) multi GET API 允许你一次性获取多个文档,你需要指定docs数组,其中包含了所有你需要查询的文档,每个查询结构至少包含索引,类 ...
- C++桥接模式【转】
https://www.cnblogs.com/jiese/p/3164940.html 将抽象部份与它的实现部份分离,使它们都可以独立地变化. 桥接模式号称设计模式中最难理解的模式之一,关键就是这个 ...
- polyfill-eventsource added missing EventSource to window ie浏览器 解决方案
今天遇到一个 ie浏览器显示空白,报错内容是: polyfill-eventsource added missing EventSource to window的问题, import 'babel-p ...
- 理解微信小程序Wepy框架的三个事件交互$broadcast,$emit,$invoke
$broadcast: $broadcast事件是由父组件发起,所有子组件都会收到此广播事件,除非事件被手动取消.事件广播的顺序为广度优先搜索顺序,如上图,如果页面Page_Index发起一个$bro ...