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家,动态表情, ...
最新文章
- 为何云原生在吞噬世界 ?
- andriod之log打印
- 计算机桌面窗口移动有虚影,win7系统桌面出现残影影响心情?一招帮你解决问题...
- SQL里各种联合查询总结
- 前端常见知识点五之Fetch
- 免费开源的 .NET 分布式组件库 Exceptionless Foundatio
- 【Java】浅析神奇的this
- 最新 C++的iostream标准库介绍(1)
- Vue-cli3 项目搭建和启动
- 恒丰银行年报:以区块链等线上“大脑”再造业务流程
- Eclipse安装Egit插件,egit安装特别缓慢
- L - Finding the Bases(KMP+dp)
- ETL工具-Kettle Spoon教程
- 还原氧化石墨烯(RGO)的结构电极-供应三维石墨烯结构体/高质量石墨烯/石墨烯铜基复合材料/基于碳化硅生长高质量石墨烯/片层厚度可调控高质量石墨烯定制
- 凸集 凸函数 判定凸函数
- 微信群控系统的实现原理,微信群控系统源码的核心实现代码
- C++程序设计课程设计报告——自助点餐系统
- k8s eviction机制
- Android开发 第2课 控件TextView、Plain Text、ImageView、 Button、ImageButton以及点击事件
- 通过VM虚拟机安装linux系统(centos版本)
热门文章
- 【市场分析1】FinTech之香港虚拟银行VB
- 脸盲的东哥从分不清老婆到分不清兄弟,于是用AI进行无人办公!
- CCS5.5.0资源及license(免费下载)
- IE 10 禁用多点触摸放大缩小页面
- 解决python toad包报错joblib.externals.loky.process_executor.TerminatedWorkerError
- PDF合并软件推荐【绿色免费】
- PDO连接MYSQL报错SQLSTATE[HY000] [2002] ����Ŀ�����������ܾ��������ӡ�
- 账户系统设计从入门到精通
- Python自动化运维之一(Python入门)
- Java实现TCP/IP的ping连通性