python写的mysql清库脚本,可根据表名分类
之前测试创建数据有时候会有出错的时候,所以就简单写了一个清库的脚本,主要是为了根据表的名称分类清除,不用到navicat去那么多表里面找。
#清库脚本
import pymysql
import re
if __name__ == '__main__':type = 3#1只删除订单;2删除订单,基础信息和库存database = 'wms4.3'# 打开数据库连接,不指定数据库conn = pymysql.connect(host='127.0.0.1', port=3306, user='root',passwd='root', db=database)# 获取游标cursor = conn.cursor()sql_select =f"select table_name from information_schema.tables where table_schema='{database}' and table_type='base table'"cursor.execute(sql_select)all_table = cursor.fetchall()#print(all_table)base_table=[]order_table=[]pmsn_table=[]stock_table=[]unver_table=[]report_table = []all_table_new = []diff_table = []for b in all_table:all_table_new.append(b[0])for table in all_table_new:if re.findall('^rec', table) or re.findall('^dict', table) or re.findall('^sys_parameter', table) or re.findall('^sys_upgrade', table):unver_table.append(table)elif re.findall('^charge', table) or re.findall('^inbound', table) or re.findall('^outbound', table):order_table.append(table)elif re.findall('^pmsn', table) or re.findall('^sys_dept', table):pmsn_table.append(table)elif re.findall('^stock', table):stock_table.append(table)elif re.findall('^report', table) or re.findall('^sys_log', table):report_table.append(table)elif re.findall('^base', table):base_table.append(table)#print(f"unver_table {len(unver_table)}:\n{unver_table}\norder_table {len(order_table)}:\n{order_table}\n"#f"pmsn_table {len(pmsn_table)}:\n{pmsn_table}\nstock_table {len(stock_table)}:\n{stock_table}\nbase_table {len(base_table)}:\n{base_table}")if type==1:really_table = order_tableif type==2:really_table=order_table+stock_table+base_tableif type ==3:really_table = base_tablei=0for name in really_table:sql = f'TRUNCATE TABLE {name}'cursor.execute(sql)conn.commit()i=i+1print(f'sql执行成功{name}({i}):{len(really_table)}')cursor.close()conn.close()print('sql执行成功****')
python写的mysql清库脚本,可根据表名分类相关推荐
- mysql查询库中所有的表名,mysql查询指定表中的所有字段名及其相关信息
SHOW TABLES FROM jzee; 可以在hibernate中作为sql语句查询出结果. 从jzee库中查出所有表名. 查询结果: select COLUMN_NAME,COLUMN_COM ...
- python 题库自动答题,自动匹配题库_如何用python写一个从题库自动匹配的答题脚本_淘题吧...
A. web数据库题目:根据用户输入的用户名和密码于数据库中的记录是否匹配制作一个用户登录模块 http://blog.csdn.net/love_leve/article/details/43226 ...
- 如何在MATLAB中调用(运行)“用Python写成的函数或脚本”
如何在MATLAB中调用"用Python写成的函数或脚本",首先要确保MATLAB知道咱们的Python解释器的位置在哪里. 如果安装了Python的时候把Python加入了系统环 ...
- 用python写一个自动群发微信脚本
使用 Python 写一个自动群发微信脚本需要使用微信第三方 API 来实现.推荐使用 itchat 库,它提供了简单易用的 API,可以方便地编写微信自动化脚本. 首先,你需要安装 itchat 库 ...
- 手机写python脚本_用Python写王者荣耀刷金币脚本
王者荣耀很多朋友都想买脚本和挂之类的,想更加容易的获得金币等可以在游戏里买英雄等,今天我们发挥程序员的优势教给大家用Python语言自己写一个可以刷金币的脚本,以下是全部内容. 王者荣耀的冒险模式里有 ...
- python脚本自动化赚钱系统_自从用python写了个自动弹幕脚本后,各大主播都来找我,净赚十万!...
Python Python开发 Python语言 自从用python写了个自动弹幕脚本后,各大主播都来找我,净赚十万! 大家好,今天又给大家带来了Python爬虫的分享,今天我们继续上次的问题,继续来 ...
- mysql 获取一个库下的所有表名
http://dev.mysql.com/doc/refman/5.1/zh/information-schema.html 官网上的第一个例子: mysql> SELECT table_nam ...
- mysql中存储过程 解决参数作为表名
关键字: mysql 存储过程 1.用变量做表名: 简单的用set或者declare语句定义变量,然后直接作为sql的表名是不行的,mysql会把变量名当作表名.在其他的sql数据库中也是如此,mss ...
- mysql event scheduler机制 与 动态表名创建
mysql event scheduler机制 与 动态表名创建 今天有一个需求,需要定时在mysql创建表与删除表,以及根据日期命名表名.诚然,通过外部程序很容易实现与控制这一切. 但是需要额外的服 ...
最新文章
- 脑机相连的狂想,马斯克实现了吗?智源观点:还很遥远
- mpvue开发小程序所遇问题及h5转化方案
- mysql near_完美解决 ERROR 1064 (42000): You have an error in your SQL syntax ... near …
- 1022 Digital Library (30 分) 【难度: 中 / 知识点: 哈希表】
- iOS开发基础-九宫格坐标(4)
- 机器人学习--定位算法AMCL全局定位方案
- [Socket网络编程]一个封锁操作被对 WSACancelBlockingCall 的调用中断。
- 控制SAP Spartacus shipping address页面spinner显示的逻辑
- html 定时刷新 数据,js中,设置定时器 每隔几秒刷新一次页面数据
- Linux系统编程---17(条件变量及其函数,生产者消费者条件变量模型,生产者与消费者模型(线程安全队列),条件变量优点,信号量及其主要函数,信号量与条件变量的区别,)
- redis 学习笔记(1)-编译、启动、停止
- ACM PKU 1019 Number Sequence http://acm.pku.edu.cn/JudgeOnline/problem?id=1019
- Julia: bug? = split ,isnumber
- 关于引用mshtml的问题
- 【BP数据预测】基于matlab蝙蝠算法优化BP神经网络数据预测【含Matlab源码 1379期】
- mysql教材课后题答案_MySql练习题参考答案
- 用户‘Sa’登录失败原因
- 信号与系统(十八)——傅里叶变换及性质(2)
- 临近秋招实习,科普一下“内推”的利优势
- linux控制NVme硬盘点灯,硬盘点灯模式的设置方法及装置与流程
热门文章
- 兔大侠整理的MySQL-Python(MySQLdb)封装类 - 推酷
- Cocos2d-x血条跟随怪物运动----之游戏开发《赵云要格斗》(5)
- 实战spring自定义属性(schema)
- 程序开发的命名规范(必读)
- Camel实现FTP下载
- centos pdf 方块的解决方法
- 查看HTTP 各方法的消息请求头和响应头——get/head/post/put
- 电子工程师也有“鄙视链”!软件硬件无一幸免!
- [转]阳光加利福尼亚 --土老冒的硅谷、旧金山见闻
- 简单分享人力资源服务行业的网站都有哪些部分组成