Skip to content

DB 클라이언트

Blyck의 DB 클라이언트는 SQLite · Oracle · PostgreSQL · MSSQL · MySQL 다섯 엔진을 같은 인터페이스로 다룹니다. 별도 DB 툴 없이 접속 · 스키마 탐색 · SQL 작성 · 결과 분석 · 데이터 수정 · 내보내기 · 자연어 SQL 생성까지 한 창에서 처리합니다.

새 탭 메뉴(+)에서 엔진을 선택하거나 저장된 접속을 클릭합니다.

엔진필수 입력기본 포트비고
SQLite파일 경로256MB 초과·잠김이면 읽기 전용 자동 전환
OracleHost · Port · Service Name · 사용자 · 비밀번호1521Thin 기본 → 실패 시 Thick 자동 폴백
PostgreSQLHost · Port · Database · 사용자 · 비밀번호5432스키마·SSL 옵션
MSSQLHost(서버\인스턴스) · Port · Database · 사용자 · 비밀번호1433SQL 인증만 (Windows 통합 인증 미지원)
MySQLHost · Port · Database · 사용자 · 비밀번호3306SSL 옵션

접속 다이얼로그에서 Thick 강제 옵션을 켜면 항상 Thick 모드로 연결합니다. 기본은 Thin을 먼저 시도하고 실패하면 Thick으로 폴백하며, 접속 후 헤더에 Oracle 접속됨 (Thin) 또는 Oracle 접속됨 (Thick) 으로 표시됩니다. Thick 모드를 사용할 때는 64비트 Oracle Instant Client 경로를 다이얼로그에 입력해야 합니다.

저장된 접속 & 비밀번호 자동완성

Section titled “저장된 접속 & 비밀번호 자동완성”

접속 다이얼로그에서 저장 이름을 입력하면 접속 정보가 영구 저장됩니다. 비밀번호는 OS 암호화(Windows DPAPI / macOS Keychain)로 보호되며, 다음부터는 비밀번호 입력 없이 클릭 한 번으로 즉시 접속됩니다.


접속하면 왼쪽 트리에 TABLES / VIEWS / INDEXES / TRIGGERS / ROUTINES 섹션이 표시됩니다.

  • 테이블 · 뷰 펼치면 컬럼 목록(이름 · 타입 · PK 아이콘)이 표시되고, 더블클릭 시 처음 200행 조회가 SQL 편집기에서 즉시 실행됩니다.
  • 인덱스 · 트리거 · 루틴 더블클릭 시 DDL을 편집기에 로드합니다.
  • 트리에서 테이블·컬럼 이름을 SQL 편집기로 드래그해 삽입할 수 있습니다.

상단 검색바에서 이름 / 컬럼 / 둘 다 범위를 선택해 검색합니다. 컬럼 검색 시 해당 테이블이 자동으로 펼쳐지며, 헤더에 N / 전체 개수가 표시됩니다.

항목동작
상세 조회컬럼 타입 · NULL 여부 · 기본값 · 인덱스 정보
처음 200행 조회엔진 방언(LIMIT / TOP / ROWNUM)에 맞는 쿼리 자동 실행
DDL 보기CREATE 문을 편집기에 로드
컬럼 분석NULL 비율 · 고유값 수 · 최빈값 · 수치 통계(min/max/평균, 표본 기반)

DDL 쿼리를 실행하면 500ms 후 트리가 자동으로 백그라운드 재인덱싱되어 변경 사항이 반영됩니다. 수동으로 새로고침하려면 헤더의 버튼을 클릭하세요.


테이블 더블클릭 또는 트리 헤더의 새 쿼리 버튼으로 편집기를 엽니다.

버튼동작
자연어→SQL 입력바 토글
쿼리 실행 (Ctrl+Enter)
실행 중지 (실행 중일 때만 활성)
+SQL 탭 추가

레일 하단에는 현재 패널의 SQL 탭 목록이 표시되어 탭 간 빠른 전환이 가능합니다.

  • DB명 — SQL ▾ : 연결 전환 드롭다운
  • 자동커밋 체크박스 / 커밋 / 롤백
  • AI (Ctrl+I) : 셀 AI (그리드 선택 범위 분석)
  • 히스토리 / 스니펫 / 내보내기 ▾ / 포맷 / 닫기(Esc)
  • Ctrl+Enter 또는 ▶ 버튼으로 실행합니다.
  • 텍스트를 선택한 상태에서 실행하면 선택 범위만 실행됩니다.
  • 연결 DB의 테이블·컬럼 이름이 자동완성됩니다.
  • 포맷 버튼은 SQL 절 앞 줄바꿈 기준으로 내장 정렬기를 실행합니다.
  • DML 실행 후 상태 줄에 완료 — 변경 N행 · Xms 또는 빨간색 오류가 표시됩니다.

자동커밋 체크박스를 OFF 하면 수동 트랜잭션 모드가 됩니다. DML을 실행해도 즉시 확정되지 않고 ● 미확정 상태로 유지됩니다. 커밋 버튼으로 확정하거나 롤백 버튼으로 되돌립니다.


■ 버튼을 클릭하면 두 단계로 취소가 진행됩니다.

  1. 소프트 취소(즉시) — UI가 즉시 복귀하고 토큰을 무효화해 결과를 폐기합니다. 상태 줄에 실행 중단됨 이 표시됩니다.
  2. 서버측 취소(best-effort) — 엔진에 취소 신호를 전송합니다. DB 서버의 체크포인트에서 인식되면 쿼리가 중단됩니다.
엔진취소 방식
Oracleconnection.break() → ORA-01013 반환
MSSQLrequest.cancel() → TDS Attention 패킷
PostgreSQL별도 연결로 pg_cancel_backend(pid) — 기존 연결 유지
MySQL별도 연결로 KILL QUERY threadId — 기존 연결 유지
SQLite서버 취소 없음 — 소프트 취소만(즉시 중단)

SQL 편집기 제목 DB명 — SQL ▾ 을 클릭하면 현재 열려 있는 모든 DB 연결 목록이 표시되고, 현재 연결에는 ✓ 가 표시됩니다. 연결을 선택하면 편집기의 SQL은 그대로 유지하면서 실행 대상 DB만 전환됩니다.


결과는 가상 스크롤 그리드로 표시되어 수십만 행도 부드럽게 탐색할 수 있습니다.

  • 행 번호(#) 열 은 가로 스크롤해도 고정됩니다. 클릭하면 행 상세 뷰어가 열립니다.
  • 상태 바N행 · Xms 실행 정보가 표시됩니다.
  • NULLNULL 로 구분 표시됩니다(빈 문자열과 구분).
  • 컬럼 폭 을 드래그로 조절할 수 있습니다.
  • 정렬: 컬럼 헤더를 클릭하면 오름차순(▲) · 내림차순(▼) 이 토글됩니다.
  • 필터: 상단 입력란에 텍스트를 입력하면 모든 컬럼에서 부분 일치로 실시간 필터링됩니다(표시 행만 필터링, DB 재쿼리 없음).

기본 5,000행을 표시하고, 초과 시 다음 5,000행 더 버튼으로 OFFSET/FETCH 누적 로드합니다.

드래그로 사각형 범위를 선택하고, 내보내기 ▾ → 클립보드(TSV) 로 복사해 Excel에 바로 붙여넣을 수 있습니다. Shift+더블클릭으로 셀 전체 값을 뷰어로 확인합니다.


단일 테이블 SELECT 결과이고 PK 컬럼이 포함되어 있을 때만 셀 편집이 활성화됩니다.

  1. 셀을 더블클릭 해 값을 수정합니다.
  2. 커밋 버튼을 클릭하면 편집기에 UPDATE … WHERE PK=… 구문이 추가됩니다.
  3. Ctrl+Enter 로 실행해 반영합니다.

실행된 변경은 다른 DML처럼 변경 이력(Ctrl+Shift+H)에 기록되어 되돌릴 수 있습니다.


결과 그리드 툴바의 + 행 또는 행 복사 버튼으로 staged INSERT를 사용할 수 있습니다.

버튼동작
+ 행빈 행 추가 (비워두면 NULL)
행 복사선택 행의 모든 컬럼 값을 복제한 새 행 추가

행을 추가하고 셀을 편집한 뒤 저장 버튼을 클릭합니다. 저장 시 자동커밋을 일시적으로 OFF 하고 INSERT를 실행하므로, 이후 커밋 또는 롤백 으로 확정하거나 취소합니다.


내보내기 ▾CSV 또는 Excel 을 선택합니다.

  • 스트리밍 방식: 메인 프로세스가 디스크로 직접 스트리밍하므로 수백만 행도 메모리 걱정 없이 저장됩니다.
  • 진행 모달에 N / 전체행 (X%) 가 표시되고 취소 버튼으로 중간에 중단할 수 있습니다.
  • CSV: UTF-8 BOM 포함(Excel에서 한글 정상 표시).
  • Excel(.xls): 1,048,575행 한도.

SQL 편집기 왼쪽 레일의 버튼으로 자연어 입력바를 토글합니다.

▸ 이번 달 매출 상위 5개 거래처
▸ 지난 주 가입한 사용자 수를 일별로 보여줘

동작 순서: 키워드 분석 → 활성 연결의 전체 스키마 점수화 → 관련 테이블·컬럼 선별 → SQL 생성 (각 단계 진행 상태와 경과 시간 표시). 생성된 SQL은 커서 줄 아래에 삽입됩니다(기존 내용 덮어쓰기 X). Ctrl+Z 로 되돌릴 수 있으며, 생성 중 취소 버튼으로 중단할 수도 있습니다.

생성된 SQL은 편집기에 들어오므로 검토 후 직접 실행합니다 — 자동으로 실행되지 않습니다.


자주 쓰는 SQL을 저장해 빠르게 불러옵니다.

  • 툴바 스니펫 버튼 클릭 → 현재 SQL 저장(이름 입력, 비우면 SQL 앞부분 자동).
  • 항목을 클릭하면 편집기에 로드되고, ✕ 로 삭제합니다.
  • 스니펫은 전역 저장되어 어느 DB 편집기에서도 사용할 수 있습니다.

툴바 히스토리 버튼을 클릭하면 성공한 쿼리가 최신 순으로 표시됩니다(중복 자동 제거). 항목을 클릭하면 편집기에 로드됩니다. 히스토리는 userData/db-history.json 에 저장됩니다.


그리드에서 셀 범위를 선택한 뒤 Ctrl+I 또는 툴바 AI 버튼을 클릭하면 선택 데이터를 컨텍스트로 AI에 질문할 수 있습니다.

▸ 이 중 이상점 분석해줘
▸ 이 데이터로 UPDATE 쿼리 만들어줘
▸ NULL 비율 높은 컬럼 이유가 뭘까?

선택 값 · 테이블명 · 실행 SQL · PK 정보 · 엔진 종류를 컨텍스트로 분석합니다. 200행 초과 시 앞 200행만 전달됩니다.


트리 우클릭 → 컬럼 분석 을 선택하면 테이블의 실제 데이터 통계를 표본 기반으로 확인할 수 있습니다.

status 컬럼 — NULL 2.3% · Distinct 4개 (active, inactive, pending, blocked) · 최빈값 active 87%
amount 컬럼 — NULL 0% · min 100 · max 9,800,000 · 평균 452,000

NULL 비율 · 고유값 수 · enum 후보 · 수치형이면 min/max/평균을 제공합니다. 쿼리 작성 전 컬럼 특성을 파악하거나 인덱스 설계에 활용합니다.


SQL 편집기에서 Ctrl+Enter로 직접 실행하는 쿼리는 확인 없이 바로 실행됩니다(파워 유저용). 대신 모든 DDL/DML이 변경 이력에 자동 기록되어 되돌릴 수 있습니다(아래 참고). 실행 전 확인창이 뜨는 경우는 다음 두 가지입니다.

경로동작
AI가 실행하는 SQL (db_query 도구)읽기는 자동, 쓰기·파괴적(DROP/TRUNCATE/WHERE 없는 DELETE 등)은 확인 다이얼로그. prod 라벨 연결은 한 단계 강화
SQL 코드 블록 ▶ 실행 (AI 답변·코드 편집기 코드렌즈)DROP/DELETE/UPDATE/TRUNCATE/ALTER/GRANT/REVOKE 등은 쿼리 미리보기와 함께 확인

스키마 트리에서 우클릭 → DROP TABLE… 같은 작업은 테이블명을 직접 입력해야 실행되는 강한 확인을 거칩니다.

DDL/DML 실행 시 변경 전 데이터가 자동 백업되어 사람·AI 실행 모두 되돌릴 수 있습니다.

  • 소량(≤1,000행, PK 포함 단일 테이블): 내부 이력 DB에 변경 전 행을 JSON으로 보관.
  • 대량 / 복잡 / PK 없음: 대상 DB에 백업 테이블(blyck_bak_…)을 만들어 보관하고, 되돌리기 후 자동 삭제.
  • DROP / TRUNCATE 등 일부 DDL은 역SQL이 불가능해 되돌릴 수 없는 항목으로 표시됩니다.

변경 이력(Ctrl+Shift+H)에서 항목을 선택해 되돌리기 하세요. WHERE 없는 대량 UPDATE · DELETE도 백업 데이터로 복원할 수 있습니다.


AI 채팅은 DB 도구를 직접 호출합니다.

▸ 이 테이블에서 중복 이메일 찾아줘
▸ orders 스키마 보여주고 인덱스 추천해줘
▸ 지난 달 주문 취소율이 높은 고객 TOP 10

동작 순서: 스키마 확인(db_schema) → 필요 시 컬럼 분석 → 쿼리 작성·실행(db_query) → 실패 시 자가 수정. 쓰기 쿼리는 항상 위 안전장치(확인 다이얼로그)를 통과합니다.


기능문서
SQL 편집기에 DB 링크해 코드 안 SQL 자동완성코드 편집기
DB 스키마·결과를 RAG 통합검색으로통합 검색(RAG)
변경 이력·DML 되돌리기변경 이력 · Git
AI 채팅으로 DB 작업 자동화AI 채팅

Oracle NJS-116 오류가 뜹니다.
Thin 드라이버가 지원하지 않는 비밀번호 검증자 방식입니다. 접속 다이얼로그에서 Thick 강제 를 켜고 64비트 Instant Client 경로를 입력하세요.

■ 중단을 눌렀는데 쿼리가 안 멈춥니다.
서버측 취소는 best-effort 방식으로 다음 체크포인트에서 인식됩니다. 무거운 집계 쿼리는 잠시 기다리세요. SQLite는 서버 단계가 없어 즉시 중단됩니다.

대용량 쿼리 중 앱이 죽습니다.
그리드 클립보드 복사 대신 내보내기 ▾(디스크 스트리밍) 을 사용하세요. Excel은 100만 행 한도입니다.

CSV를 Excel에서 열었더니 한글이 깨집니다.
CSV는 UTF-8 BOM 으로 저장됩니다. Excel 데이터 가져오기 → 인코딩 65001 UTF-8 지정, 또는 클립보드(TSV) 로 직접 붙여넣기를 사용하세요.

셀 편집이 안 됩니다.
단일 테이블 SELECT 이면서 PK 컬럼이 포함된 결과에서만 활성화됩니다. JOIN · GROUP BY · UNION · DISTINCT 나 뷰 결과는 편집할 수 없습니다.

자연어→SQL 결과가 엉뚱한 테이블을 씁니다.
인덱스를 재빌드하고 📒 용어집 에 업무 용어·테이블 매핑을 등록하면 정확도가 높아집니다.

연결 직후 트리가 비어 있습니다.
접속 성공 후 스키마 인덱싱에 수 초가 걸릴 수 있습니다. 헤더 새로고침 버튼을 클릭해 보세요. Oracle Thick 폴백 중이면 접속 완료까지 시간이 더 걸릴 수 있습니다.