-- 0005 · 스키마 해체 -- -- 전용 database 라 이름 충돌이 없고(19개 전부 다름), 계정이 하나라 스키마별 GRANT 도 없다. -- 남은 건 "경계 표시"인데 places.place_id 를 참조하는 11개 테이블이 전부 place 밖에 있었다 — -- 조인이 매번 넘는 선은 경계가 아니다. 접두어가 소속을 말하게 한다. -- area_contents 만 접두어가 없다 — 공유물이라는 표시다. ALTER TABLE IF EXISTS company.users SET SCHEMA public; ALTER TABLE IF EXISTS job.jobs SET SCHEMA public; ALTER TABLE IF EXISTS place.places SET SCHEMA public; ALTER TABLE IF EXISTS place.place_links SET SCHEMA public; ALTER TABLE IF EXISTS place.units SET SCHEMA public; ALTER TABLE IF EXISTS place.media SET SCHEMA public; ALTER TABLE IF EXISTS fact.facts SET SCHEMA public; ALTER TABLE IF EXISTS fact.faqs SET SCHEMA public; ALTER TABLE IF EXISTS public.place_links RENAME TO place_channels; -- 네이버·야놀자 등 채널 ALTER TABLE IF EXISTS public.units RENAME TO place_units; -- 객실·메뉴·프로그램 ALTER TABLE IF EXISTS public.media RENAME TO place_photos; -- 실제로 사진만 담는다 ALTER TABLE IF EXISTS public.facts RENAME TO place_facts; ALTER TABLE IF EXISTS public.faqs RENAME TO place_faqs; ALTER TABLE IF EXISTS local.local_contents SET SCHEMA public; ALTER TABLE IF EXISTS local.place_contents SET SCHEMA public; ALTER TABLE IF EXISTS public.local_contents RENAME TO area_contents; ALTER TABLE IF EXISTS public.place_contents RENAME TO place_area_refs; ALTER TABLE IF EXISTS site.sites SET SCHEMA public; ALTER TABLE IF EXISTS site.site_contents SET SCHEMA public; ALTER TABLE IF EXISTS site.site_versions SET SCHEMA public; ALTER TABLE IF EXISTS site.publish_logs SET SCHEMA public; ALTER TABLE IF EXISTS public.site_contents RENAME TO site_sections; ALTER TABLE IF EXISTS public.publish_logs RENAME TO site_publish_logs; -- 빈 테이블과 이관 잔재는 0006 에서 판단한다. ALTER TABLE IF EXISTS place.place_aliases SET SCHEMA public; ALTER TABLE IF EXISTS local.routes SET SCHEMA public; ALTER TABLE IF EXISTS local.nearby_links SET SCHEMA public; ALTER TABLE IF EXISTS site.ai_check_results SET SCHEMA public; ALTER TABLE IF EXISTS local.place_contents_legacy SET SCHEMA public; ALTER TABLE IF EXISTS public.routes RENAME TO place_routes; ALTER TABLE IF EXISTS public.place_aliases RENAME TO place_names; -- ai_check_results 는 place_id 가 키다 — 사이트가 아니라 업장이 대상이다. ALTER TABLE IF EXISTS public.ai_check_results RENAME TO place_ai_checks; -- CASCADE 를 쓰지 않는다 — 빠뜨린 테이블이 있으면 여기서 실패해야 한다. DROP SCHEMA IF EXISTS company RESTRICT; DROP SCHEMA IF EXISTS place RESTRICT; DROP SCHEMA IF EXISTS fact RESTRICT; DROP SCHEMA IF EXISTS local RESTRICT; DROP SCHEMA IF EXISTS site RESTRICT; DROP SCHEMA IF EXISTS job RESTRICT;