JhHardwareWRS_BackPoint/scripts/migrate_equipment.py
2026-06-24 15:19:14 +08:00

33 lines
993 B
Python

from pathlib import Path
import sys
from sqlalchemy import text
ROOT = Path(__file__).resolve().parents[1]
sys.path.insert(0, str(ROOT))
from app.database import engine # noqa: E402
def main() -> None:
with engine.begin() as conn:
conn.execute(text("""
CREATE TABLE IF NOT EXISTS equipment (
device_no VARCHAR(64) NOT NULL PRIMARY KEY,
remark VARCHAR(500) NULL,
created_at DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP,
updated_at DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4
"""))
conn.execute(text("""
INSERT IGNORE INTO equipment (device_no, remark)
SELECT DISTINCT device_no, '由历史产品清单带入'
FROM products
WHERE device_no IS NOT NULL AND device_no <> ''
"""))
print("equipment migrated")
if __name__ == "__main__":
main()