지난 시간에는 각 Database 종류별로 DB 테이블 컬럼정보를 조회하는 쿼리에 대해 말씀드렸습니다.
이는 테이블 정의서 Excel을 작성하는데 활용하곤 하는데요.
오늘은 이렇게 조회한 컬럼정보를 통해 SQL 을 생성하는 서비스를 말씀드리려고 합니다.
사실 사용하시는 많은 DB 접속툴에서 메타정보를 이용해 간단히 쿼리문을 생성해주고 있으니, 코드 한땀의 부가적인 기능으로 봐주시면 되지 않을까 싶네요.
SELECT C.COLUMN_NAME, C.COLUMN_TYPE, C.COLUMN_COMMENT FROM INFORMATION_SCHEMA.TABLES T LEFT JOIN INFORMATION_SCHEMA.COLUMNS C ON T.TABLE_NAME = C.TABLE_NAME WHERE 1 = 1 /* AND T.TABLE_SCHEMA = 'TABLE_SCHEMA' */ AND T.TABLE_NAME = 'olosia_com' ORDER BY C.ORDINAL_POSITION;
위와 같은 쿼리로 컬럼정보 조회 후...
조회한 컬럼 정보를 코드 한땀의 컬럼 입력란에 붙여넣기 합니다.
그리고 SQL 탭의 Select / Insert / Update / Delete 메뉴를 통해서 각 쿼리문을 생성 하실 수 있습니다.
alias : 테이블의 별칭으로 사용할 문자열을 입력 입력합니다.
clause-upper : 예약어를 대문자로 출력합니다.
column-upper : 컬럼명과 테이블명을 대문자로 출력합니다.
vertical-align : 쿼리문을 세로 정렬합니다.
SELECT /* */ seq, user_id, user_email, del_fg, create_date FROM olosia_com WHERE 1 = 1 AND seq = :seq AND user_id = :userId AND user_email = :userEmail AND del_fg = :delFg AND create_date = :createDate
INSERT INTO olosia_com ( seq, user_id, user_email, del_fg, create_date ) VALUES ( :seq, :userId, :userEmail, :delFg, :createDate )
UPDATE olosia_com SET seq = :seq, user_id = :userId, user_email = :userEmail, del_fg = :delFg, create_date = :createDate WHERE 1 = 1 AND seq = :seq AND user_id = :userId AND user_email = :userEmail AND del_fg = :delFg AND create_date = :createDate
DELETE FROM olosia_com WHERE 1 = 1 AND seq = :seq AND user_id = :userId AND user_email = :userEmail AND del_fg = :delFg AND create_date = :createDate
오늘은 코드 한땀에서 제공하는 SQL 구문 생성기능에 대해 말씀드렸습니다.
그럼 좋은 하루되세요.
감사합니다.