# config.py # ================= 数据库连接配置 ================= SQL_SERVER_CONN = { 'driver': '{ODBC Driver 18 for SQL Server}', 'server': '192.168.110.114', 'database': 'CompanyDB', 'uid': 'peng', 'pwd': 'Cqbld123456.' } # Access 驱动配置 (根据你的 Office 版本选择 mdb 或 accdb) ACCESS_DRIVER = "{Microsoft Access Driver (*.mdb, *.accdb)}" # ================= 日志表配置 ================= # 根据你提供的表结构配置列名 LOG_TABLE_CONFIG = { 'schema': 'dbo', 'table_name': 'TableChangeLog', # 下面定义字段名,方便代码引用,防止硬编码 'col_log_id': 'LogID', 'col_table_name': 'TableName', 'col_record_id': 'RecordID', 'col_address': 'TableAddress', # 使用 TableAddress 作为文件路径来源 'col_synced': 'Synced' } # ================= 同步映射配置 (核心重构) ================= # 结构: { "Access文件绝对路径": { "Access表名": { SQL目标配置 } } } # 这样即使不同文件有相同的表名,也能区分开 SYNC_MAPPING = { # 第一个 Access 文件 r"\\192.168.110.114\生产进度表\2025年数据\生产合同数据.accdb": { "26年压力表合同数据": { "target_schema": "productionContractData", "target_table": "26年压力表合同数据", # 映射到 A 表 "pk_col": "ID" }, "26年温度计合同数据": { "target_schema": "productionContractData", "target_table": "26年温度计合同数据", "pk_col": "ID" } }, # # 第二个 Access 文件 (可能有同名的 UserInfo 表) # r"D:\Data\ProjectB\backup.mdb": { # "UserInfo": { # "target_schema": "dbo", # "target_table": "ProjB_UserInfo", # 映射到 B 表 # "pk_col": "ID" # } # } } # ================= 运行参数 ================= POLL_INTERVAL = 60 # 轮询间隔(秒) BATCH_SIZE = 1000 # 批量处理大小