MySQL基本操作之-----增删改查(Python脚本方式)
2019-01-07 22:30
459 查看
版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/HuiTaiLangEr/article/details/85963844
背景描述
公司项目用到的数据库是MySQL,测试过程中经常需要对数据库进行一些批量操作。故在此记录一下基本的增删改查的操作,以便后续自己操作的时候能够快速翻查。
预置条件
- MySQL环境已安装准备完毕
- Python环境已安装准备完毕
- 示例使用PyCharm IDE写py脚本
具体实践
连数据库
- 导入pymysql库
在PyCharm的Terminal窗口执行pip install pymysql。(注:必须先导入pip的库才能使用该指令)
也可以通过Pycharm 导航栏的preference 进入到 Project Interpreter进行库的添加(pip库也可以通过该方式添加)
- 连接数据库
在py脚本中执行下述代码:
import pymysql conn = pymysql.connect(user = '数据库用户名',password = '密码',port = 3306,db = 'TBL_TEST',host = '数据库服务端ip',charset = 'utf8') #获取游标 cursor = conn.cursor()
如果没有报错,则说明连接成功。报错的话,则查看具体原因,进行排查。
创建表单
在TBL_TEST数据库里创建测试用的表TBL_ScaningGroup。该表包含两个varchar类型字段ISDN、GroupID,且都设置为主键。
#------创建表----------# createSQL = """CREATE TABLE TBL_ScaningGroup( ISDN VARCHAR(10), GroupID VARCHAR(10), PRIMARY KEY(ISDN,GroupID) )CHARSET UTF8 """ try: cursor.execute('DROP TABLE IF EXISTS TBL_ScaningGroup') cursor.execute(createSQL) conn.commit() except: import traceback print("创建表失败!") traceback.print_exc() conn.rollback() finally: cursor.close() conn.close()
创建成功后,可以进入该数据库,执行下述语句查看该表创建情况。
DESC TBL_ScaningGroup;
插入数据
设置的插入数据要求如下:
- 测试需要往表里面插入300条数据。
- ISDN和GroupID都是递增的,且步长为1。
- 毎50个ISDN对应同一个GroupID。
#------插入数据--------# insertSQL = 'INSERT INTO TBL_ScaningGroup (ISDN,GroupID) VALUES (%s,%s)' step = 50 try: for i in range(0,6): GroupID = 13901050001 + i for j in range(1,51): ISDN = 13901000000 + j + i*step cursor.execute(insertSQL,(ISDN,GroupID)) conn.commit() #切记提交事务。默认是需要手动提交的。 except: import traceback print("数据插入失败!") traceback.print_exc() conn.rollback() #插入失败,则进行回滚操作。 finally: cursor.close() conn.close()
查看数据是否插入成功:
查询数据
#------查询数据--------# selectSQL = 'SELECT * FROM TBL_ScaningGroup' try: cursor.execute(selectSQL) results = cursor.fetchall() for row in results: ISDN = row[0] GroupID = row[1] print(ISDN,GroupID) except: import traceback print("数据查询失败!") traceback.print_exc() finally: cursor.close() conn.close()
更新数据
更新的数据要求如下:
- 各ISDN对应的GroupID递增1。及原先如果是“13901050001”,则变为“13901050002”。
- ISDN字段不变。
#------更新数据-------# updateSQL = 'UPDATE TBL_ScaningGroup SET GroupID = %s WHERE ISDN = %s' # 先查询数据总数 jquery = 'SELECT COUNT(*) FROM TBL_ScaningGroup' try: cursor.execute(jquery) result1 = cursor.fetchone() count = result1[0] step = 50; print(count) for i in range(1,count+1): addCount = (i // (step + 1)) #毎50个递增一次 cursor.execute(updateSQL,(13901050002 + addCount,13901000000 + i)) conn.commit() except: import traceback print("数据更新失败") traceback.print_exc() conn.rollback() finally: cursor.close() conn.close()
删除数据
#-------删除数据---------# #删除ISDN大于13901000100 deleteSQL = 'DELETE FROM TBL_ScaningGroup WHERE ISDN >= %s' try: cursor.execute(deleteSQL,13901000100) conn.commit() except: import traceback print("数据删除异常") traceback.print_exc() conn.rollback() finally: cursor.close() conn.close()
小结
数据库这些基本操作,用的少会经常遗忘。写下这些就是为了以后自己查询方便。同时,后面要坚持写一些工作中实用的东西,也算是工作的一种修行吧。^_ ^
以上
相关文章推荐
- python对mysql.connector的简单封装,读改增删基本操作
- python---mysql基本操作3
- python操作mysql(一)MySQLdb模块安装和数据库基本操作
- 在Python程序中操作MySQL的基本方法
- Python操作mysql数据库(封装基本的增删改查)
- C# 用Linq的方式实现对Xml文件的基本操作(创建xml文件、增删改查xml文件节点信息)
- C# 用Linq的方式实现对Xml文件的基本操作(创建xml文件、增删改查xml文件节点信息)
- 使用Python操作MySQL的一些基本方法
- mysql基本操作(表的增删查改)、约束、表设计
- python操作mysql / mysql 增删查改语句
- C# 用Linq的方式实现对Xml文件的基本操作(创建xml文件、增删改查xml文件节点信息)
- C# 用Linq的方式实现对Xml文件的基本操作(创建xml文件、增删改查xml文件节点信息)
- mongodb11天之屠龙宝刀(三)基本操作:增删改查与mysql对比
- Linux学习笔记--Python操作mysql数据库(封装基本的增删改查)
- PHP MySQL基本操作之增删改查
- mysql 基本的增删查改操作
- python操作mysql范例(增删查改)
- mysql基本操作快速复习-增删改查
- 使用pymysql在python中对mysql的增删改查操作(五)
- 详解使用pymysql在python中对mysql的增删改查操作(综合)