pymysql连接mysql数据库try_pymysql操作mysql数据库
importpymysql#数据库操作#连接
defdb_conn(host,port,user,passwd,db_name):try:
conn=pymysql.connect(
host=host,
port=port,
user=user',
passwd=password,
db=db_name,
charset='utf8',
)#cur=conn.cursor()
print('数据库连接成功!')#返回连接
returnconnexceptpymysql.Error as e:print('数据库连接失败')print('mysql.Error:',e.args[0],e.args[1])defdb_cur(conn):#获取游标
cur=conn.cursor()returncurdefdb_close(cur,conn):#游标关闭
cur.close()#提交事务
conn.commit()#连接关闭
conn.close()#插入单行数据
def db_insert_data(sql,cur,*args):try:#print(args)
result=cur.execute(sql,args)print('添加语句受影响的行数:',result)exceptException as e:print('db_insert_data error:',e.args)#批量插入数据
defdb_insert_datas(sql,cur,list_datas):try:
result=cur.executemany(sql,list_datas)print('批量插入受影响的行数:',result)exceptException as e:print('db_insert_datas error:',e.args)#修改单行数据
defdb_update(sql,cur):
result=cur.execute(sql)print('修改语句受影响的行数:',result)#批量修改数据
defdb_update_datas(sql,cur,list_datas):try:
result=cur.executemany(sql,list_datas)print('批量修改受影响的行数:',result)exceptException as e:print('db_update_datas error:',e.args)#删除单行数据
defdb_delete_data(sql,cur):
result=cur.execute(sql)print('删除语句受影响的行数:',result)#批量删除数据
defdb_delete_datas(sql,cur,list_datas):try:
result=cur.executemany(sql,list_datas)print('批量删除受影响的行数:',result)exceptException as e:print('db_delete_datas error:',e.args)#回滚
defroll_back(conn):try:
conn.rollback()print('回滚完成!')exceptException as e:print('rollback error:',e.args)defdb_select_data(sql,cur):
result=cur.execute(sql)print('查询语句受影响的行数:',result)defdb_select_datas(sql,cur,list_datas):try:
result=cur.executemany(sql,list_datas)print('批量查询受影响的行数:',result)exceptException as e:print('db_select_datas error:',e.args)if __name__=="__main__":
host='127.0.0.1'port=3306user='root'passwd='123456'db='py3_tstgr'conn=db_conn(host,port,user,passwd,db)print(conn)
cur=db_cur(conn)print(cur)
insert_sql="insert into user values(1,'tom','123','1990-01-01');"db_insert_data(insert_sql,cur)
insert_sql2="insert into user values(%s,%s,%s,%s);"db_insert_data(insert_sql2,cur,2,'lucy','aaa','1991-02-02')
insert_datas_sql="insert into user values(%s,%s,%s,%s);"list_datas=[(2,'ha2','222','1992-02-02'),(3,'ha3','333','1993-03-03'),(4,'ha4','444','1994-04-04')]
db_insert_datas(insert_datas_sql,cur,list_datas)#查询数据
sql="select * from user;"cur.execute(sql)
res1=cur.fetchone() #获取一行数据
print(res1)
res2=cur.fetchmany(2) #获取多行数据
print(res2)
res3=cur.fetchall() #获取所有数据
print(res3)print(cur.fetchone()) #None
#重置游标
cur.scroll(1,mode='relative')print(cur.fetchone())#更新数据
up_sql="update user set name='lala' where password='123';"db_update(up_sql,cur)#批量更新数据
up_sqls="update user set name=%s where password=%s;"up_datas=[('lw','123'),('lc','aaa')]
db_update_datas(up_sqls,cur,up_datas)#删除数据
delete_sql="delete from user where name='lw';"db_delete_data(delete_sql,cur)
delete_sqls="delete from user where name=%s;"db_delete_datas(delete_sqls,cur,[('lc'),('hah2'),('hah3')])#print(cur.rownumber) # 0 获取所在行号
#cur.scroll(0,mode='absolute')
#cur.execute('select * from user;')
select_sql="select * from user;"db_select_data(select_sql,cur)print(cur.fetchall())#roll_back(conn) # 回滚
#print(cur.rownumber)
#cur.scroll(0, mode='absolute')
#cur.execute('select * from user;')
#查询单行
select_sql = "select * from user;"db_select_data(select_sql, cur)#批量查询
select_sqls="select * from user where name=%s;"db_select_datas(select_sqls,cur,[('ha1'),('ha2'),('ha3')])print(cur.fetchall())
db_close(cur,conn)#断开连接
pymysql连接mysql数据库try_pymysql操作mysql数据库相关推荐
- 数据库之操作MySQL
数据库之操作MySQL 一.数据库 1.什么是数据库 数据库是数据管理的有效技术,是由一批数据构成的有序集合,这些数据被存放在结构化的数据表里.. 数据表之间相互关联,反映客观事物间的本质联系.. 数 ...
- MFC对数据库的操作---MYSQL
目录 在mysql数据库中创建所需要的表 创建数据库 创建表 配置项目环境 编辑在vs中配置包含目录.引用目录.库目录和附加依赖项 添加库文件 添加头文件 实现对数据库的操作 打开数据库 数据增删改 ...
- flask mysql orm_Flask笔记:数据库ORM操作MySQL+pymysql/mysql-python+SQLAlchemy/Flask-SQLAlchemy...
Python中使用sqlalchemy插件可以实现ORM(Object Relationship Mapping,模型关系映射)框架,而Flask中的flask-sqlalchemy其实就是在sqla ...
- python封装类连接mysql数据_python操作mysql数据库基本类封装
# -*- coding: UTF-8 -*- import MySQLdb as mdb class MysqldbHelper(object): """操作mysql ...
- shell脚本连接、读写、操作mysql数据库实例
本文介绍了如何在shell中读写mysql数据库.主要介绍了如何在shell 中连接mysql数据库,如何在shell中创建数据库,创建表,插入csv文件,读取mysql数据库,导出mysql数据库为 ...
- python读取mysql数据库_Python操作MySQL数据库9个实用实例
在Windows平台上安装mysql模块用于Python开发 用python连接mysql的时候,需要用的安装版本,源码版本容易有错误提示.下边是打包了32与64版本. MySQL-python-1. ...
- php操作mysql数据_PHP - 操作MySQL数据库
第16章 PHP操作MySQL 学习要点: 1.PHP连接到MySQL 2.增删改查 3.其他常用函数 如果你已经具有了使用PHP.SQL和MySQL的丰富经验,现在就可以把所有这些技术组合在一起.P ...
- 数据库——python操作MySQL、修改表SQL语句、视图、触发器、存储过程、事务、流程控制、常见函数、索引
文章目录 一.python操作MySQL 1.pymysql模块 1.基本使用 2.sql注入问题 3.二次确认 二.修改表SQL语句 1.修改表的名字 rename 2.添加字段 add 3.修改字 ...
- linux shell操作mysql,Linux shell操作mysql数据库的方法
摘要 腾兴网为您分享:Linux shell操作mysql数据库的方法,鱼乐贝贝,宜信,嘻嘻动漫,西餐菜谱等软件知识,以及包装效果图,德州人社,evasi0n.com,ios迅雷,民革e家,动态表情, ...
最新文章
- Product Backlog:终极任务清单
- 在java中使用关键字导入包_java中import关键字的使用方法
- C 迭代器iterator的实现原理
- Python 创建随机mac地址(单播、组播)
- bulma.css_如何建立一个? Bulma CSS的自适应博客设计
- CUDA C编程权威指南 第五章 共享内存和常量内存
- 一图抵千言:带你快速学会 GoogLeNet 神经网络 | CSDN 博文精选
- 35-BigDecimal详解
- 科研绘图软件GraphPad Prism教程(一)
- Google账号注册失败 无法向手机发验证码
- MAC出现:未能正确打开SANGFOR SSL Virtual网卡,暂时不能提供SSL CS服务,请联系管理员
- C# 委托、匿名委托、Lambda表达式详解
- [28期] 坚定信念,抗战二十年
- windows开机出现GNU GRUB黑屏解决方法记录
- ibm服务器卡在开机界面_使用HTTPS配置IBM Integration Bus Web用户界面
- synology nfs_如何手动和自动关闭和重新启动Synology NAS
- 【立创开源】RY3730-带充电的恒流驱动LED照明灯
- SRS_Audio_Sandbox注册码破解版+注册机+中文
- 美国「四院院士」为你实力科普深度学习
- jvm学习——18.垃圾回收之STW