创建数据表

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(使用一)的更多相关文章

  1. pyMysql

    本篇对于Python操作MySQL主要使用两种方式: 原生模块 pymsql ORM框架 SQLAchemy pymsql pymsql是Python中操作MySQL的模块,其使用方法和MySQLdb ...

  2. Python 3.x 连接数据库(pymysql 方式)

    ==================pymysql=================== 由于 MySQLdb 模块还不支持 Python3.x,所以 Python3.x 如果想连接MySQL需要安装 ...

  3. Python中操作mysql的pymysql模块详解

    Python中操作mysql的pymysql模块详解 前言 pymsql是Python中操作MySQL的模块,其使用方法和MySQLdb几乎相同.但目前pymysql支持python3.x而后者不支持 ...

  4. 杂项之pymysql连接池

    杂项之pymysql连接池 本节内容 本文的诞生 连接池及单例模式 多线程提升 协程提升 后记 1.本文的诞生 由于前几天接触了pymysql,在测试数据过程中,使用普通的pymysql插入100W条 ...

  5. Python3中使用PyMySQL连接Mysql

    Python3中使用PyMySQL连接Mysql 在Python2中连接Mysql数据库用的是MySQLdb,在Python3中连接Mysql数据库用的是PyMySQL,因为MySQLdb不支持Pyt ...

  6. Python之路-python(mysql介绍和安装、pymysql、ORM sqlachemy)

    本节内容 1.数据库介绍 2.mysql管理 3.mysql数据类型 4.常用mysql命令 创建数据库 外键 增删改查表 5.事务 6.索引 7.python 操作mysql 8.ORM sqlac ...

  7. python pymysql和orm

    pymsql是Python中操作MySQL的模块,其使用方法和MySQLdb几乎相同. 1. 安装 管理员打开cmd,切换到python的安装路径,进入到Scripts目录下(如:C:\Users\A ...

  8. python成长之路【第十三篇】:Python操作MySQL之pymysql

    对于Python操作MySQL主要使用两种方式: 原生模块 pymsql ORM框架 SQLAchemy pymsql pymsql是Python中操作MySQL的模块,其使用方法和MySQLdb几乎 ...

  9. (转)pymysql 连接mysql数据库---不支持中文解决

    往数据库里插入中文时出现异常:UnicodeEncodeError: 'latin-1' codec can't encode characters 就是编码的问题,pymysql默认的编码是lati ...

  10. 循序渐进Python3(十)-- 1 -- pymysql

    使用pymsql 模块操作数据库 #!/usr/bin/env python , ),()]), user='root', passwd='123456', db='test')# 创建游标curso ...

随机推荐

  1. DML和索引内部结构变化

    1.修改数据对索引结构的影响 合适的索引对查询性能和效率的提升是巨大的,但是万事有利有弊,拥有索引的表在增.删.改记录时需要去维护索引.如何让增.删.改更快速更高效?这就需要了解数据修改时对索引结构会 ...

  2. 深入浅出 JVM ClassLoader

    # 前言 在 JVM 综述里面,我们说,JVM 做了三件事情,Java 程序的内存管理, Java Class 二进制字节流的加载(ClassLoader),Java 程序的执行(执行引擎).我们也说 ...

  3. 安装Eclipse时遇到”java was started but returned exit code = 13“如何解决?

    有的时候运行开发工具时会出现java was started but returned exit code = 13......的提示,绝大多数的问题都是版本问题: 我们可以打开命令行工具cmd 输入 ...

  4. sql特殊语法

    MYSQL --判断非空select ifnull(null,'666');--666select ifnull(null,null);--null--合并字段select CONCAT('666', ...

  5. 【多线程】Task

    介绍 Task是.NET推出数据任务处理的工作类.位于System.Threading.Tasks命名空间下,通过命名空间也可以看出是个多线程类. 创建Task: Task有很多构造函数,无参有参都有 ...

  6. JDK动态代理与CGLib动态代理相关问题

    导读: 1.JDK动态代理原理是什么?为什么不支持类的代理? 2.JDK动态代理实例 3.CGLib代理原理是什么? 4.CGLib代理实例 5.JDK动态代理与CGLib代理的区别是什么? 6.总结 ...

  7. Python 最佳实践指南 2018 学习笔记

    基础信息 版本 Python 2.7 Python 3.x Python2.7 版本在 2020 年后不再提供支持,建议新手使用 3.x 版本进行学习 实现 CPython:Python的标准实现: ...

  8. 利用批处理文件删除系统托盘上的图标(适用于Windows各个版本)

    对于我这种强迫症患者来说,如果我已经删除了一些软件,但是系统托盘里面还有它,我会很难受.所以,没办法,必须想办法把它清除掉,还自己一片安宁!!!不知各位是否遇到过和我一样的问题,下面贴一段批处理文件的 ...

  9. Confluence设置MySQL数据库报错:必须使用'READ-COMMITTED'作为默认隔离级别。

    解决方案: mysql -u root -p123456 SET GLOBAL tx_isolation='READ-COMMITTED'; mysql数据库创建 1.设置mysql隔离级别 SET ...

  10. tab 页形式展现多张报表

    业务系统中,很多报表都是沿用之前 EXCEL 的报表样式,原来以 sheet 格式显示的表,客户在 web 端展现的时候也希望也有同样的格式,润乾在实现这种效果和 EXCEL 一样简单灵活,轻松将数据 ...