|
|
|
|
|
|
|
|
|
|
|
|
|
|
\echo '当前迁移状态:' |
|
|
SELECT |
|
|
migration_name, |
|
|
started_at, |
|
|
finished_at, |
|
|
CASE |
|
|
WHEN finished_at IS NULL THEN 'FAILED' |
|
|
ELSE 'COMPLETED' |
|
|
END as status, |
|
|
logs |
|
|
FROM _prisma_migrations |
|
|
ORDER BY started_at DESC; |
|
|
|
|
|
|
|
|
\echo '创建备份表...' |
|
|
CREATE TABLE IF NOT EXISTS _prisma_migrations_backup_20250927 AS |
|
|
SELECT * FROM _prisma_migrations |
|
|
WHERE finished_at IS NULL OR logs LIKE '%P3009%'; |
|
|
|
|
|
|
|
|
\echo '将要删除的失败迁移:' |
|
|
SELECT migration_name, started_at |
|
|
FROM _prisma_migrations |
|
|
WHERE finished_at IS NULL OR logs LIKE '%P3009%'; |
|
|
|
|
|
|
|
|
|
|
|
\echo '删除特定失败迁移...' |
|
|
DELETE FROM _prisma_migrations |
|
|
WHERE migration_name = '20230921191814_init' |
|
|
AND (finished_at IS NULL OR logs LIKE '%P3009%'); |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
\echo '清理后的迁移状态:' |
|
|
SELECT |
|
|
migration_name, |
|
|
started_at, |
|
|
finished_at, |
|
|
CASE |
|
|
WHEN finished_at IS NULL THEN 'FAILED' |
|
|
ELSE 'COMPLETED' |
|
|
END as status |
|
|
FROM _prisma_migrations |
|
|
ORDER BY started_at DESC; |
|
|
|
|
|
|
|
|
\echo '检查业务表是否存在:' |
|
|
SELECT EXISTS ( |
|
|
SELECT FROM information_schema.tables |
|
|
WHERE table_schema = 'public' |
|
|
AND table_name = 'users' |
|
|
) as users_table_exists, |
|
|
EXISTS ( |
|
|
SELECT FROM information_schema.tables |
|
|
WHERE table_schema = 'public' |
|
|
AND table_name = 'workspaces' |
|
|
) as workspaces_table_exists; |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|