一些常用函数及解释

db = pymysql.connect('host','user','password','database') # 连接数据库

cursor = db.cursor() # 创建游标对象

cursor.execute(sql) # 执行sql语句sql为sql语句

data = cursor.fetchone() # 获取单条数据(具体用法见下面示例)

data_list = fetchall() # 接收全部的返回结果行

db.commit() # 提交到数据库执行

db.rollback() # 发生错误回滚

db.close() # 关闭连接

主要操作是通过sql语句递交给execute()函数执行

以下是一些常用方法的例子

数据库创建表操作代码示例

import pymysql

# 链接数据库
db = pymysql.connect("yourhost", "yourname", "yourpassword", "yourdatabase") # 创建游标对象
cursor = db.cursor() # 使用execute()方法执行SQL,如果表存在则删除
cursor.execute("DROP TABLE IF EXISTS EMPLOYEE") # SQL语句创建表
sql = """
CREATE TABLE EMPLOYEE (
FIRST_NAME CHAR(20) NOT NULL,
LAST_NAME CHAR(20),
AGE INT,
SEX CHAR(1),
INCOME FLOAT )
"""
cursor.execute(sql) # 关闭数据库连接
db.close()

数据库插入操作代码示例

import pymysql

config = {
"host":"yourhost",
"user":"yourname",
"password":"yourpassword",
"database":"yourdatabase"
} db = pymysql.connect(**config) cursor = db.cursor()
F_name = 'Dawei'
L_name = 'Wang'
age = 20
sex = 'M'
income = 2000 # 注意 %s 外加引号,作为字符,否者mysql会认为是一个column
sql = "INSERT INTO EMPLOYEE (FIRST_NAME, \
LAST_NAME, AGE, SEX, INCOME) VALUES \
('%s', '%s', '%s', '%s', '%s')" %\
(F_name, L_name, age, sex, income)
try:
# 执行SQL语句
cursor.execute(sql)
# 提交到数据库执行,为了及时跟进数据库这句最好加上
db.commit()
except:
# 如果发生错误则回滚
db.rollback() db.close()

数据库查询操作代码示例

import pymysql

config = {
"host":"yourhost",
"user":"yourname",
"password":"yourpassword",
"database":"yourdatabase"
} db = pymysql.connect(**config) cursor = db.cursor() # SQL 查询语句
sql = "SELECT * FROM EMPLOYEE \
WHERE INCOME > %s" % (1000) try:
# 执行语句
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 = %s, sex = %s, income = %s" % \
(fname, lname, age, sex, income ))
except:
print("Error: unable to fetch data") db.close()

数据库更新操作代码示例

import pymysql

config = {
"host":"yourhost",
"user":"yourname",
"password":"yourpassword",
"database":"yourdatabase"
} db = pymysql.connect(**config) cursor = db.cursor() # SQL 更新语句
sql = "UPDATE EMPLOYEE SET AGE = AGE + 1 WHERE SEX = '%c'" % ('M')
try:
# 执行SQL语句
cursor.execute(sql)
db.commit()
except:
db.rollback() db.close()

数据库删除操作代码示例

import pymysql

config = {
"host":"yourhost",
"user":"yourname",
"password":"yourpassword",
"database":"yourdatabase"
} db = pymysql.connect(**config) cursor = db.cursor() # SQL 删除语句
sql = "DELETE FROM EMPLOYEE WHERE AGE > %s" % (20) try:
cursor.execute(sql)
db.commit()
except:
db.rollback() db.close()

PyMySQL学习笔记的更多相关文章

  1. python3 pymysql学习笔记

    练手项目需要用到mysql就顺手把mysql也学了,这个模块没什么好说的,比较简单,实际整个过程我都是在学mysql语句,但还是发现了一些问题. fetchall() 获取结果集中的所有行 这个函数难 ...

  2. [学习笔记] pymysql入门

    一.快速开始 对于会用MySQL的朋友来说,开始使用pymysql可以说真的so esay,只要用下面的代码,把想要对数据库的操作放在 sql = " " 里就可以了. 没有接触过 ...

  3. Django学习笔记(9)—— 开发用户注册与登录系统

    一,项目题目: 开发用户注册与登录系统 该项目主要练习使用Django开发一个用户注册与登录的系统,通过这个项目然后巩固自己这段时间所学习的Django知识. 二,项目需求: 开发一个简单的用户登录与 ...

  4. Django学习笔记(4)——Django连接数据库

    前言 在MVC或者MTV设计模式中,模型(M)代表对数据库的操作.那么如何操作数据库呢?本小节就认真学习一下.首先复习一下Django的整个实现流程 ,然后再实现一下使用数据库的整个流程,最后学习一下 ...

  5. Django初识 学习笔记一

    Django初识 学习笔记一 mvcviewsmodelstemplate. 一 MVC框架 MVC全名是Model View Controller,是模型(model)-视图(view)-控制器(c ...

  6. python学习笔记目录

    人生苦短,我学python学习笔记目录: week1 python入门week2 python基础week3 python进阶week4 python模块week5 python高阶week6 数据结 ...

  7. SQLAlchemy 学习笔记(一):Engine 与 SQL 表达式语言

    个人笔记,如有错误烦请指正. SQLAlchemy 是一个用 Python 实现的 ORM (Object Relational Mapping)框架,它由多个组件构成,这些组件可以单独使用,也能独立 ...

  8. Django学习笔记(18)——BBS+Blog项目开发(2)主体思路及流程

    这篇博客主要完成一个BBS+Blog项目,那么主要是模仿博客园的博客思路,使用Django框架进行练习. 准备:项目需求分析 在做一个项目的时候,我们首先做的就是谈清楚项目需求,功能需求,然后才开始写 ...

  9. js学习笔记:webpack基础入门(一)

    之前听说过webpack,今天想正式的接触一下,先跟着webpack的官方用户指南走: 在这里有: 如何安装webpack 如何使用webpack 如何使用loader 如何使用webpack的开发者 ...

随机推荐

  1. 配置uboot指定nfs挂载根文件系统

    背景: 文件系统的调试也建议在 网络中进行. 概念: NFS是Network File System的缩写及网络文件系统. 要功能是通过局域网络让不同的主机系统之间可以共享文件或目录. NFS系统和W ...

  2. pt-archiver 归档数据

    pt-archiver 参数说明pt-archiver是Percona-Toolkit工具集中的一个组件,是一个主要用于对MySQL表数据进行归档和清除工具.它可以将数据归档到另一张表或者是一个文件中 ...

  3. 003、Java的单行注释

    代码如下: package TIANPAN; public class TestDemo { public static void main(String args[]) { // JAVA的单行注释 ...

  4. 记录:JAVA抽象类、接口、多态

    JAVA抽象类.接口.多态 1. 多态 定义 多态是同一个行为具有多个不同表现形式或形态的能力.(多态就是同一个接口,使用不同的实例而执行不同操作) 如何实现多态 继承和接口 父类和接口类型的变量赋值 ...

  5. [BJDCTF2020]Cookie is so stable

    0x00 知识点 Twig模板注入 链接: https://www.k0rz3n.com/2018/11/12/%E4%B8%80%E7%AF%87%E6%96%87%E7%AB%A0%E5%B8%A ...

  6. CheckBox标签和属性

    CheckBox的作用:可以提供复选 下面是我点击按钮查看所选内容的代码:定义按钮监听器,并在onClick方法中调用shoeAlt方法(此方法会在第二块代码定义) Button btn=(Butto ...

  7. 18.swoole学习笔记--案例

    <?php //创建webSocket服务器 $ws=); //open $ws->on('open',function($ws,$request){ echo "新用户 $re ...

  8. mysql多表连接查询

    新建两张表: 表1:student  截图如下: 表2:course  截图如下: (此时这样建表只是为了演示连接SQL语句,当然实际开发中我们不会这样建表,实际开发中这两个表会有自己不同的主键.) ...

  9. 第二阶段scrum-10

    1.整个团队的任务量: 2.任务看板: 会议照片: 产品状态: 等待发布

  10. mysql视图使用方法

    1.为什么要使用视图 对于复杂的查询,往往是有多个数据表进行关联查询而得到,而这种语句往往比较复杂,也可能非常频繁的使用.比如: select 字段一,字段二.字段三, from 数据表1 join ...