ff95c1950e
1. getColumnGroup metaCols 확장 — 시스템 자동 생성 컬럼이 5개만 인식되어
사용자 컬럼에 섞여 보이던 문제. objid / tenant_id / creator / modifier /
created_at / updated_at 추가 (총 11개).
2. updateColumnWebType 회사코드 격리 — 모든 호출이 company_code='*' 로 저장돼
회사 관리자가 자기 회사 전용 web_type 변경 시 모든 회사 공통 설정을 건드림.
컨트롤러에서 @RequestAttribute("company_code") 받아 service 에 전달.
3. validateUniqueConstraints N+1 해소 — hasColumn 이 루프 안에서 매번 호출되어
UNIQUE 컬럼 N 개일 때 N 번의 information_schema 조회. 루프 밖으로 빼서 1 번.
4. sanitize 강화 — 빈 문자열 / 숫자 시작 / 63자 초과 / SQL 예약어 모두
IllegalArgumentException 으로 거부. 빈 식별자가 동적 SQL 에 끼어들어 500
에러 노출되던 패턴 방지.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>