"이 주문번호 300건만 조회해 주세요"라며 엑셀 파일이 날아옵니다. 값 300개에 따옴표를 붙이고 쉼표로 잇는 작업을 손으로 하다 보면 따옴표 하나가 빠지고, 마지막 쉼표가 남아 문법 오류가 납니다. 이 도구는 엑셀 열을 복사해 붙여넣으면 IN절 또는 INSERT 문을 만들어 줍니다.
붙여넣은 값은 브라우저 안에서만 처리됩니다 — 고객 식별번호 같은 민감한 목록을 다뤄도 외부로 나가지 않습니다.
IN (…) 조건으로. 문자/숫자 타입에 따라 따옴표를 자동 처리합니다.Oracle은 IN 목록 하나에 1000개까지만 허용합니다. 1000건이 넘는 목록을 붙여넣으면 도구가 자동으로 IN (…첫 1000개…) OR 컬럼 IN (…나머지…) 형태로 분할해 줍니다 — 운영 중 갑자기 만나면 당황하는 제한을 미리 흡수합니다.
| 입력 (엑셀 한 열) | 출력 |
|---|---|
A001A002A003 | IN ('A001', 'A002', 'A003') |
| 1200건의 코드 | IN (…1000개…) OR col IN (…200개…) 자동 분할 |
값에 작은따옴표 포함 (O'Neil) | 'O''Neil' — SQL 이스케이프 자동 |
0012)을 숫자 타입으로 출력하면 0이 사라집니다. 코드성 값은 문자 타입을 고르세요.같은 목록도 문자 타입이면 따옴표가 붙고, 숫자 타입이면 그대로 들어갑니다. DB 컬럼 타입과 다르게 만들면 — 문자 컬럼에 숫자 리터럴 — 조회는 되더라도 인덱스를 타지 못하는 암묵적 형변환이 일어날 수 있습니다. 목록의 생김새가 아니라 대상 컬럼의 타입에 맞추는 것이 원칙이고, 애매하면 문자 쪽이 데이터 손상(앞자리 0 소실)이 없는 안전한 기본값입니다.
도구가 만든 IN절·INSERT는 문법적으로 완성돼 있지만, 실행의 책임은 사람에게 남습니다. IN절은 실행 전에 대상 건수를 COUNT로 먼저 확인하고, INSERT는 트랜잭션 안에서 실행해 건수를 확인한 뒤 확정하는 습관이 사고를 막습니다. 특히 현업이 준 엑셀은 중복·오타·빈 행이 섞여 있는 것이 보통이므로, "받은 목록 그대로"가 아니라 "검증한 목록"으로 변환하는 순서가 중요합니다.
생성 결과를 저장소나 위키에 남길 때는 실데이터 목록이 포함된다는 점을 기억하세요 — 고객 식별자가 든 IN절은 그 자체로 개인정보 문서가 됩니다. 공유 전 마스킹이 필요한지 판단하는 것까지가 이 작업의 마무리입니다.
만든 IN절을 실행했는데 0건이면 로그 바인더로 실제 바인딩 값과 대조해 보세요. 테이블 구조가 필요하면 DDL ↔ 정의서, 채울 테스트 값이 필요하면 목데이터 생성이 이어집니다.
DosqlKit(도스퀄킷)은 SQL 실무에서 반복되는 손작업을 한 화면에 모은 툴킷입니다. MyBatis 로그의 물음표(?)에 Parameters 값을 끼워 실행 가능한 SQL로 재조립하고, 엑셀·CSV 열을 IN절이나 INSERT문으로 만들고, DDL과 테이블 정의서를 서로 변환하고, 테스트용 목데이터를 생성합니다.
쿼리를 실제로 실행해 보기 전에 로그에서 바로 값을 확인하거나, 정의서 문서를 만들거나, 더미 데이터를 채워야 하는 SI·유지보수 현장을 위해 만들었습니다. 모든 변환은 접속한 기기의 브라우저 안에서 끝나며, 붙여넣은 로그·스키마·데이터가 외부 서버로 전송되지 않습니다. 아래에서 각 탭의 쓰임과 자주 묻는 질문을 정리했습니다.
콘솔에 찍힌 "Preparing:"(물음표가 든 SQL)과 "Parameters:"(값 목록) 두 줄을 붙여넣으면, 물음표 자리에 값을 순서대로 끼워 실제 실행된 SQL로 재조립합니다. 타입에 맞춰 문자열은 따옴표로 감싸 바로 실행·검증할 수 있습니다.
엑셀이나 CSV에서 복사한 열을 붙여넣으면 IN (…) 목록이나 INSERT문으로 만들어 줍니다. 오라클의 IN절 1000개 제한에 걸리면 자동으로 OR 조건으로 나눠 줍니다.
CREATE TABLE 문을 붙여넣으면 마크다운·TSV 테이블 정의서로 바꾸고, 반대로 정의서에서 DDL을 만듭니다. 목데이터 탭은 DDL에서 컬럼 유형을 추론해 원하는 행 수만큼 더미 데이터를 생성하며, 같은 시드는 항상 같은 결과를 냅니다.
네, 모든 도구를 무료로 쓸 수 있습니다. 운영 비용은 페이지에 표시되는 광고로 충당합니다.
아니요. 브라우저로 페이지를 열면 바로 쓸 수 있고, 로그인이나 프로그램 설치가 필요 없습니다.
아니요. 로그 바인딩, IN절 생성, 정의서 변환, 목데이터 생성은 모두 접속한 기기의 브라우저 안에서 처리되며, 입력한 내용은 외부 서버로 전송되지 않습니다.
아니요. 개인정보 오남용을 막기 위해 이런 식별번호는 체크섬(검증 숫자)이 일부러 어긋나게 생성되어 실제로는 유효하지 않은 값입니다. 테스트·개발 용도로만 사용하세요.
테마와 마지막으로 연 탭 같은 화면 설정만 브라우저 localStorage에 저장됩니다. 붙여넣은 로그·데이터 자체는 저장하지 않습니다.
Google 애드센스 광고가 표시될 수 있으며 광고 목적의 제3자 쿠키가 사용될 수 있습니다. 자세한 내용은 페이지 하단 "개인정보 안내"에서 확인할 수 있습니다.