feat: 更新数据库表结构,重命名并优化字段以支持新功能

This commit is contained in:
晓丰 2025-06-29 10:52:07 +08:00
parent e2245d86e1
commit b6ffe17404

92
DB.py
View File

@ -19,7 +19,6 @@ MYSQL_URL = (
"mysql+pymysql://db_vidcon:rexdK4fhCCiRE4BZ" "mysql+pymysql://db_vidcon:rexdK4fhCCiRE4BZ"
"@192.144.230.75:3306/db_vidcon?charset=utf8mb4" "@192.144.230.75:3306/db_vidcon?charset=utf8mb4"
) )
_engine = create_engine( _engine = create_engine(
MYSQL_URL, MYSQL_URL,
pool_size=20, max_overflow=10, pool_size=20, max_overflow=10,
@ -28,48 +27,58 @@ _engine = create_engine(
) )
_meta = MetaData() _meta = MetaData()
video_op = Table("sh_dm_video_op_v2", _meta, # 操作记录表 (sh_dm_video_op_v3)
Column("v_id", BigInteger, primary_key=True), video_op = Table("sh_dm_video_op_v3", _meta,
Column("v_xid", String(64)), Column("id", Integer, primary_key=True, autoincrement=True),
Column("a_id", Integer), Column("v_id", String(64)),
Column("level", Integer), Column("v_xid", String(64)),
Column("name_title", String(255)), Column("a_id", Integer, default=0),
Column("keyword", String(255)), Column("level", Integer),
Column("rn", String(8)), Column("name_title", String(100)),
Column("history_status", String(32)), Column("keyword", String(100)),
Column("is_repeat", Integer), Column("rn", String(50)),
Column("sort", Integer), Column("history_status", String(100)),
Column("createtime", Integer), Column("is_repeat", Integer),
Column("updatetime", Integer), Column("is_piracy", String(2), default='3'),
Column("batch", BigInteger), Column("sort", Integer),
Column("machine", Integer), Column("createtime", Integer),
) Column("updatetime", Integer),
Column("operatetime", Integer),
Column("batch", Integer),
Column("machine", Integer),
Column("ts_status", Integer, default=1),
)
video = Table("sh_dm_video_v2", _meta, # 视频表 (sh_dm_video_v3)
Column("v_id", BigInteger, primary_key=True), video = Table("sh_dm_video_v3", _meta,
Column("v_xid", String(64)), Column("id", Integer, primary_key=True, autoincrement=True),
Column("rn", String(8)), Column("v_id", String(64)),
Column("v_name", String(255)), Column("v_xid", String(64)),
Column("title", String(255)), Column("v_name", String(255), nullable=False),
Column("link", Text), Column("title", String(255), nullable=False),
Column("edition", String(64)), Column("link", String(255), nullable=False),
Column("duration", Integer), Column("is_piracy", Integer, default=3),
Column("public_time", String(32)), Column("edition", String(255), default=''),
Column("cover_pic", Text), Column("duration", String(11), default='0'),
Column("sort", Integer), Column("watch_number", Integer, default=0),
Column("u_xid", String(64)), Column("follow_number", Integer, default=0),
Column("u_id", BigInteger), Column("video_number", Integer, default=0),
Column("u_pic", Text), Column("public_time", DateTime),
Column("u_name", String(255)), Column("cover_pic", String(255)),
Column("status", Integer), Column("sort", Integer),
Column("createtime", Integer), Column("history_status", String(255)),
Column("updatetime", Integer), Column("u_xid", String(64)),
Column("u_id", String(100)),
Column("u_pic", String(255)),
Column("u_name", String(255)),
Column("status", Integer, default=1),
Column("ts_status", Integer, default=1),
Column("createtime", Integer),
Column("updatetime", Integer),
Column("is_repeat", Integer, default=0),
Column("operatetime", Integer),
)
Column("watch_number", Integer),
Column("follow_number", Integer),
Column("video_number", Integer),
Column("is_repeat", Integer),
)
video_author = Table( video_author = Table(
"sh_dm_video_author", "sh_dm_video_author",
_meta, _meta,
@ -86,7 +95,6 @@ video_author = Table(
Column("update_time", Integer, nullable=True, comment="更新时间UNIX 时间戳)"), Column("update_time", Integer, nullable=True, comment="更新时间UNIX 时间戳)"),
) )
def mysql_retry(max_retries: int = 3, base_delay: float = 2.0): def mysql_retry(max_retries: int = 3, base_delay: float = 2.0):
""" """
装饰器工厂捕获 InterfaceError 后断线重连并重试 装饰器工厂捕获 InterfaceError 后断线重连并重试