This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# 从数据库生成模型类
sqlacodegen sqlite:////root/sharedata/sqlite/shared.db > models/shared.py
sqlacodegen sqlite:////root/sharedata/sqlite/scrapy.db > models/scrapy.py
# 初始化
alembic init migrations/shared_comm
alembic init migrations/scrapy
alembic init migrations/testdb
# 同步修改到数据库(读取 models/shared.py )
./scripts/sync_shared_comm.sh
./scripts/reset_testdb.sh
### 对视图支持不好,主要是视图的字段没有类型,所以在导入导出时会出错,慎用!
------------------------- 清理掉无法处理的字段 --------------------
PRAGMA foreign_keys = OFF; -- 禁用外键检查
-- 检查字段是否已删除
PRAGMA table_info(javdb_series); -- 应看不到parent_id字段
-- 验证数据完整性
SELECT COUNT(*), MIN(id), MAX(id) FROM javdb_series; -- 数量应与操作前一致
-- 5. 处理 javdb_series 表
CREATE TABLE "javdb_series_new" (
`id` INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,
`name` VARCHAR(255) NOT NULL,
`href` VARCHAR(255) UNIQUE,
`created_at` TEXT DEFAULT (datetime('now', 'localtime')),
`updated_at` TEXT DEFAULT (datetime('now', 'localtime')),
`details` TEXT,
from_list INTEGER DEFAULT (0),
from_movie_list INTEGER DEFAULT (0)
);
INSERT INTO javdb_series_new (id, name, href, created_at, updated_at, details, from_list, from_movie_list)
SELECT id, name, href, created_at, updated_at, details, from_list, from_movie_list
FROM javdb_series;
DROP TABLE javdb_series;
ALTER TABLE javdb_series_new RENAME TO javdb_series;
-- 检查字段是否已删除
PRAGMA table_info(javdb_series); -- 应看不到parent_id字段
-- 验证数据完整性
SELECT COUNT(*), MIN(id), MAX(id) FROM javdb_series; -- 数量应与操作前一致
PRAGMA foreign_keys = ON; -- 恢复外键检查