安装
Linux
pip3 install loguru -i https://pypi.tuna.tsinghua.edu.cn/simple
Windows
pip install loguru -i https://pypi.tuna.tsinghua.edu.cn/simple
使用
#!/usr/bin/env python3
# -*- encoding: utf-8 -*-
"""
@File : 单位ID.py
@Time : 2022-08-13 11:02
@Author : 坐公交也用券
@Version : 1.0
@Contact : faith01238@hotmail.com
@Homepage : https://liumou.site
@Desc : 上传和查询单位ID
"""
from loguru import logger
from model.Connect import ConnectDb
# 设置装饰器
@logger.catch
class Create:
def __init__(self,
host,
port=3306,
user='td',
passwd="123",
db='dd',
table='company'):
"""
初始化参数
:param host: 数据库主机
:param port: 数据库端口
:param user: 登录用户
:param passwd: 登录密码
:param db: 数据库名称
:param table: 数据表名称
"""
self.table = table
self.db = db
self.passwd = passwd
self.user = user
self.port = port
self.host = host
self.Con = ConnectDb(user=self.user,
host=self.host,
port=self.port,
passwd=self.passwd,
db_name=self.db)
self.table_list = []
def table_f9(self):
"""
创建F9数据表
:return:
"""
pass
def table_sn(self):
"""
创建sn数据表
:return:
"""
pass
def dev(self):
"""
创建设备表
:return:
"""
cmd = """CREATE TABLE `dev_all` (
`ID` INT(11) NOT NULL AUTO_INCREMENT COMMENT 'ID',
`SN` VARCHAR(50) NULL DEFAULT '' COMMENT 'SN' COLLATE 'utf8mb3_general_ci',
PRIMARY KEY (`ID`) USING BTREE
)
COLLATE='utf8mb3_general_ci'
ENGINE=InnoDB
ROW_FORMAT=DYNAMIC
AUTO_INCREMENT=1
;"""
if self.exists(table='dev_all'):
if self.Con.commit(sql=cmd):
logger.info("创建设备表成功")
else:
logger.error("创建设备表失败")
else:
logger.debug("已存在数据表: dev_all")
def exists(self, table):
"""
检查表是否存在
:param table:
:return: 是否需要创建数据表
"""
if self.Con.status():
logger.info("数据库连接成功")
else:
logger.error("数据库连接失败")
exit(1)
table_list = self.Con.cmd(sql="show tables;")
if table_list:
for i in table_list:
self.table_list.append(i[0])
if self.table_list:
if table in self.table_list:
logger.info(f"数据表存在: {table}")
return False
return True
if __name__ == "__main__":
up = Create(host='127.0.0.1', user='root', passwd='1')
up.dev()
效果如下