PyMysql的几个重要方法

  1. connect函数:连接数据库,根据连接的数据库类型不同,该函数的参数也不相同。connect函数返回Connection对象。
  2. cursor方法:获取操作数据库的Cursor对象。cursor方法属于Connection对象。
  3. execute方法:用于执行SQL语句,该方法属于Cursor对象。
  4. commit方法:在修改数据库后,需要调用该方法提交对数据库的修改,commit方法属于Cursor对象。
  5. rollback方法:如果修改数据库失败,一般需要调用该方法进行数据库回滚操作,也就是将数据库恢复成修改之前的样子
  6. from pymysql import *
    import json def connectDB():
    db = connect('127.0.0.1','root','password','databasename')
    return db
    db = connectDB() def creatTable(db):
    cursor = db.cursor()
    sql = '''
    CREATE TABLE Persons
    (
    id INT PRIMARY KEY NOT NULL,
    name TEXT NOT NULL,
    age INT NOT NULL,
    address CHAR(50),
    salary REAL
    );
    '''
    try:
    cursor.execute(sql)
    db.commit()
    return True
    except:
    db.rollback()
    return False def insertRecords(db):
    cursor = db.cursor()
    try:
    cursor.execute('DELETE FROM persons')
    cursor.execute("INSERT INTO persons(id,name,age,address,salary)\
    VALUES(1,'Paul',32,'California',2000.00)");
    cursor.execute("INSERT INTO persons(id,name,age,address,salary)\
    VALUES(2,'Allen',25,'Texas',3000.00)");
    cursor.execute("INSERT INTO persons(id,name,age,address,salary)\
    VALUES(3,'Teddy',23,'Norway',2500.00)");
    cursor.execute("INSERT INTO persons(id,name,age,address,salary)\
    VALUES(4,'Mark',19,'Rich',5000.00)");
    db.commit()
    return True
    except Exception as e:
    print(e)
    db.rollback()
    return False def selectRecords(db):
    cursor = db.cursor()
    sql = 'SELECT name,age,address,salary FROM Persons ORDER BY age DESC'
    cursor.execute(sql)
    results = cursor.fetchall()
    print(results)
    fields = ['name','age','address','salary']
    records = []
    for row in results:
    records.append(dict(zip(fields,row)))
    return json.dumps(records) if creatTable(db):
    print('成功创建Persons表')
    else:
    print('persons表已经存在') if insertRecords(db):
    print('成功插入数据')
    else:
    print('插入记录失败') print(selectRecords(db))
    db.close()

      

pymysql -转自https://www.cnblogs.com/chenhaiming/p/9883349.html#undefined的更多相关文章

  1. 访问路径:https://i.cnblogs.com/posts?categoryid=925678

    https://i.cnblogs.com/posts?categoryid=925678

  2. URL https://i.cnblogs.com/EditPosts.aspx?opt=1

    URL url = new URL("https://i.cnblogs.com");URL url1 = new URL(url, "EditPosts.aspx?op ...

  3. 随笔二-https://www.cnblogs.com/shang1680/p/9657994.html

    作业要求来自https://edu.cnblogs.com/campus/gzcc/GZCC-16SE2/homework/2097 GitHub远程仓库的地址:https://github.com/ ...

  4. 211806189杨昊辰 https://www.cnblogs.com/honey1433223/

    211806189杨昊辰 https://www.cnblogs.com/honey1433223/

  5. https://www.cnblogs.com/h2zZhou/p/5440271.html

    https://www.cnblogs.com/h2zZhou/p/5440271.html

  6. https://www.cnblogs.com/soundcode/p/4174410.html

    https://www.cnblogs.com/soundcode/p/4174410.html 1.首先要在服务器端新建一个网站axpx页 然后再网站的后台写代码获取winform传过来的文件名. ...

  7. https://www.cnblogs.com/yudanqu/p/9467803.html

    https://www.cnblogs.com/yudanqu/p/9467803.html

  8. 转发自:一像素 十大经典排序算法(动图演示)原链接:https://www.cnblogs.com/onepixel/articles/7674659.html 个人收藏所用 侵删

    原链接:https://www.cnblogs.com/onepixel/articles/7674659.html     个人收藏所用   侵删 0.算法概述 0.1 算法分类 十种常见排序算法可 ...

  9. @无痕客 https://www.cnblogs.com/wuhenke/archive/2012/12/24/2830530.html 通篇引用

    无痕客 https://www.cnblogs.com/wuhenke/archive/2012/12/24/2830530.html 关于Async与Await的FAQ 关于Async与Await的 ...

随机推荐

  1. 关于pycharm中缩进、粘贴复制等文本编辑功能部分失效的解决办法

    有可能是同时安装了vim,冲突导致: 在seetings中点击Plugins,搜索vim卸载后功能恢复

  2. JAVA基础搬运工

    1Java线程的6种状态及切换 https://blog.csdn.net/pange1991/article/details/53860651/ 2进程和线程的区别 https://www.cnbl ...

  3. response响应

    郭晨 软件151 1531610114 response1.response常用APIsetStatus:设置响应行当中的状态码setHeader:设置响应头信息getOutputStream:获得字 ...

  4. Java BitSet解决海量数据去重

    先提一个问题,怎么在40亿个整数中找到那个唯一重复的数字? 第一想法就是Set的不可重复性,依次把每个数字放入HashSet中,当放不去进去的时候说明这就是重复的数字,输出这个数字. if(hs.co ...

  5. oracle 中update多个字段

    update  A set (A.a2,A.a3) =(select B.b2,b.b3 from  B where B.b1= A.a1 and A.a3=100 )

  6. 使用windows任务计划程序自动清除C盘缓存文件

    背景 由于应用程序会不断的产生各种临时文件和缓存文件,我们的C盘有时候不知不觉就被填满了,因此,配置一个自动清除缓存文件的脚本势在必行了. 功能 自动删除C盘的缓存和临时文件 隐藏执行时的CMD窗口 ...

  7. Python3 标准库学习

    python3.5.6 官方文档  https://docs.python.org/3.5/library/index.html 1.介绍 2.内置函数 3.内置常量 3.1常数添加的 site模块 ...

  8. Excel与Google Sheets中实现线性规划求解

    很久没更新过APS系列文章了,这段时间项目工作确实非常紧,所以只能抽点时间学习一下运筹学的入门知识,算是为以后的APS项目积累点基础.看了一些运筹学的书(都是科普级别的)发现原来我目前面对的很多排产. ...

  9. python科学计算包numpy用法(一)

    numpy是python中一个用来做科学计算的包,用起来十分方便,下面是我总结的numpy的用法: 1.如何创建矩阵 创建矩阵有很多种方法,主要包括以下几种: 通过array函数创建 >> ...

  10. java核心-多线程-线程类-Callable、Future和FutureTask

    基本概念 <1>Callable,Callable和Runnable差不多,两者都是为那些其实例可能被另一个线程执行的类而设计的,最主要的差别在于Runnable不会 返回线程运算结果,C ...