pymysql -转自https://www.cnblogs.com/chenhaiming/p/9883349.html#undefined
PyMysql的几个重要方法
- connect函数:连接数据库,根据连接的数据库类型不同,该函数的参数也不相同。connect函数返回Connection对象。
- cursor方法:获取操作数据库的Cursor对象。cursor方法属于Connection对象。
- execute方法:用于执行SQL语句,该方法属于Cursor对象。
- commit方法:在修改数据库后,需要调用该方法提交对数据库的修改,commit方法属于Cursor对象。
- rollback方法:如果修改数据库失败,一般需要调用该方法进行数据库回滚操作,也就是将数据库恢复成修改之前的样子
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的更多相关文章
- 访问路径:https://i.cnblogs.com/posts?categoryid=925678
https://i.cnblogs.com/posts?categoryid=925678
- 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 ...
- 随笔二-https://www.cnblogs.com/shang1680/p/9657994.html
作业要求来自https://edu.cnblogs.com/campus/gzcc/GZCC-16SE2/homework/2097 GitHub远程仓库的地址:https://github.com/ ...
- 211806189杨昊辰 https://www.cnblogs.com/honey1433223/
211806189杨昊辰 https://www.cnblogs.com/honey1433223/
- https://www.cnblogs.com/h2zZhou/p/5440271.html
https://www.cnblogs.com/h2zZhou/p/5440271.html
- https://www.cnblogs.com/soundcode/p/4174410.html
https://www.cnblogs.com/soundcode/p/4174410.html 1.首先要在服务器端新建一个网站axpx页 然后再网站的后台写代码获取winform传过来的文件名. ...
- https://www.cnblogs.com/yudanqu/p/9467803.html
https://www.cnblogs.com/yudanqu/p/9467803.html
- 转发自:一像素 十大经典排序算法(动图演示)原链接:https://www.cnblogs.com/onepixel/articles/7674659.html 个人收藏所用 侵删
原链接:https://www.cnblogs.com/onepixel/articles/7674659.html 个人收藏所用 侵删 0.算法概述 0.1 算法分类 十种常见排序算法可 ...
- @无痕客 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的 ...
随机推荐
- python中讲的好的内容记载
什么是Name_mangling以及python的下划线约定 (转载来源:https://blog.csdn.net/handsomekang/article/details/40303207)
- 为什么要学习socket
为什么要学习socket socket历史悠久.它们的使用始于 1971年的ARPANET,后来成为1983年发布的Berkeley Software Distribution(BSD)操作系统中的A ...
- c++ 创建线程以及参数传递
//创建线程,传递参数 DWORD dwThreadID = ; HANDLE hThread = CreateThread(NULL, , MonitorThreadFunction, , & ...
- DEVEXPRESS GRIDVIEW 代码添加按钮(转)
https://www.cnblogs.com/qq-xiao/p/6122573.html 1.1 创建一个RepositoryItemButtonEdit方法 1 private Reposito ...
- 新建git仓库并与github同步
windows系统,GitExtentions. 如果在一个空目录克隆一个github仓库: 1. 在一个空目录下,点击右键,点击Clone 2. 设置: 3. 点击加载SSH密钥.参看 GitExt ...
- WebApi Owin OAuth
Microsoft.Owin.Host.SystemWeb Owin Microsoft.Owin Microsoft.Owin.Diagnostics Owin Micros ...
- AsyncTask 的 get post 封装
1.get方法的封装AsyncTask public class DBUTil2 { public static interface Succee{ void onSuccee(String resu ...
- 函数中不能对全局变量进行修改,想要修改全局变量需要在变量前面加global
# def change_name(name):# global school # school = "Mage Linux"# print(&quo ...
- ionic3使用@angular/http 访问nodejs(koa2框架)服务不能返回数据
cordova的http插件不能使用在browser上,所以当需要在browser上浏览时,需要使用@angular/http 里的方法来访问nodejs服务. 如果出现服务端能够接收请求并相应,而客 ...
- activiti中的查询sql
<?xml version="1.0" encoding="UTF-8" ?> <!DOCTYPE mapper PUBLIC "- ...