|
4 | 4 | - 다양한 SQL 쿼리 결과를 여러 시트로 엑셀 파일로 저장하는 Node.js CLI 도구 |
5 | 5 | - 멀티 DB 지원, 쿼리/엑셀/시트별 다양한 옵션 지원 |
6 | 6 | - XML/JSON 쿼리 정의 파일 지원 |
| 7 | +- 데이터베이스 연결 테스트 및 검증 기능 |
7 | 8 |
|
8 | 9 | --- |
9 | 10 |
|
|
14 | 15 | ```bash |
15 | 16 | npm install |
16 | 17 | ``` |
17 | | -3. DB 접속정보 설정: `resources/config.json` 참고 |
| 18 | +3. DB 접속정보 설정: `config/dbinfo.json` 파일 설정 |
| 19 | + |
| 20 | +### 새로운 CLI 명령어 |
| 21 | + |
| 22 | +v1.1부터 새로운 CLI 인터페이스가 추가되었습니다: |
| 23 | + |
| 24 | +```bash |
| 25 | +# 엑셀 파일 생성 |
| 26 | +node src/excel-cli.js export --xml ./queries/sample-queries.xml |
| 27 | + |
| 28 | +# 쿼리 파일 검증 |
| 29 | +node src/excel-cli.js validate --xml ./queries/sample-queries.xml |
| 30 | + |
| 31 | +# 데이터베이스 연결 테스트 |
| 32 | +node src/excel-cli.js list-dbs |
| 33 | + |
| 34 | +# 도움말 |
| 35 | +node src/excel-cli.js help |
| 36 | +``` |
| 37 | + |
| 38 | +### NPM 스크립트 |
| 39 | + |
| 40 | +```bash |
| 41 | +# 엑셀 내보내기 |
| 42 | +npm run export -- --xml ./queries/sample-queries.xml |
| 43 | + |
| 44 | +# 쿼리 파일 검증 |
| 45 | +npm run validate -- --xml ./queries/sample-queries.xml |
| 46 | + |
| 47 | +# DB 연결 테스트 |
| 48 | +npm run list-dbs |
| 49 | + |
| 50 | +# 도움말 |
| 51 | +npm run help |
| 52 | +``` |
18 | 53 |
|
19 | 54 | --- |
20 | 55 |
|
@@ -547,5 +582,108 @@ build-release.bat |
547 | 582 |
|
548 | 583 | --- |
549 | 584 |
|
550 | | -## 8. 문의/기여 |
| 585 | +## 8. CLI 명령어 참조 |
| 586 | + |
| 587 | +### 1. 데이터베이스 연결 테스트 |
| 588 | + |
| 589 | +```bash |
| 590 | +# 모든 설정된 데이터베이스 연결 테스트 |
| 591 | +node src/excel-cli.js list-dbs |
| 592 | + |
| 593 | +# 또는 NPM 스크립트 사용 |
| 594 | +npm run list-dbs |
| 595 | +``` |
| 596 | + |
| 597 | +**출력 예시:** |
| 598 | +``` |
| 599 | +📋 데이터베이스 연결 테스트 시작 |
| 600 | +
|
| 601 | +총 2개 데이터베이스 연결 테스트: |
| 602 | +
|
| 603 | + sampleDB: ✅ 연결 성공 |
| 604 | + erpDB: ❌ 연결 실패 - ConnectionError: Failed to connect to localhost:1433 |
| 605 | +
|
| 606 | +================================================================================ |
| 607 | +📊 연결 테스트 결과 요약 |
| 608 | +================================================================================ |
| 609 | +총 데이터베이스: 2개 |
| 610 | +연결 성공: 1개 |
| 611 | +연결 실패: 1개 |
| 612 | +
|
| 613 | +❌ 연결 실패한 데이터베이스: |
| 614 | + - erpDB: ConnectionError: Failed to connect to localhost:1433 |
| 615 | +
|
| 616 | +✅ 연결 성공한 데이터베이스: |
| 617 | + - sampleDB: localhost/SampleDB:1433 |
| 618 | +``` |
| 619 | + |
| 620 | +### 2. 쿼리 파일 검증 |
| 621 | + |
| 622 | +```bash |
| 623 | +# XML 쿼리 파일 검증 |
| 624 | +node src/excel-cli.js validate --xml ./queries/sample-queries.xml |
| 625 | + |
| 626 | +# JSON 쿼리 파일 검증 |
| 627 | +node src/excel-cli.js validate --query ./queries/sample-queries.json |
| 628 | + |
| 629 | +# NPM 스크립트 사용 |
| 630 | +npm run validate -- --xml ./queries/sample-queries.xml |
| 631 | +``` |
| 632 | + |
| 633 | +**출력 예시:** |
| 634 | +``` |
| 635 | +📋 쿼리 파일 검증 시작 |
| 636 | +
|
| 637 | +파일 경로: ./queries/sample-queries.xml |
| 638 | +파일 형식: XML |
| 639 | +✅ 파일 존재 확인 |
| 640 | +✅ XML 형식 검증 |
| 641 | + 시트 개수: 3개 |
| 642 | +✅ 데이터베이스 설정 로드 |
| 643 | + 설정된 DB 개수: 2개 |
| 644 | +
|
| 645 | +✅ 모든 검증이 완료되었습니다. |
| 646 | +``` |
| 647 | + |
| 648 | +### 3. 엑셀 파일 생성 |
| 649 | + |
| 650 | +```bash |
| 651 | +# XML 파일로 엑셀 생성 |
| 652 | +node src/excel-cli.js export --xml ./queries/sample-queries.xml |
| 653 | + |
| 654 | +# JSON 파일로 엑셀 생성 |
| 655 | +node src/excel-cli.js export --query ./queries/sample-queries.json |
| 656 | + |
| 657 | +# 변수 지정하여 실행 |
| 658 | +node src/excel-cli.js export --xml ./queries/sample-queries.xml --var "year=2024" --var "dept=IT" |
| 659 | + |
| 660 | +# 사용자 정의 DB 설정 파일 사용 |
| 661 | +node src/excel-cli.js export --xml ./queries/sample-queries.xml --config ./config/custom-db.json |
| 662 | + |
| 663 | +# NPM 스크립트 사용 |
| 664 | +npm run export -- --xml ./queries/sample-queries.xml --var "year=2024" |
| 665 | +``` |
| 666 | + |
| 667 | +### 4. 모든 옵션 |
| 668 | + |
| 669 | +| 옵션 | 단축형 | 설명 | 예시 | |
| 670 | +|------|--------|------|------| |
| 671 | +| `--xml` | `-x` | XML 쿼리 정의 파일 경로 | `--xml ./queries/sample.xml` | |
| 672 | +| `--query` | `-q` | JSON 쿼리 정의 파일 경로 | `--query ./queries/sample.json` | |
| 673 | +| `--config` | `-c` | DB 설정 파일 경로 (기본: config/dbinfo.json) | `--config ./config/custom.json` | |
| 674 | +| `--var` | `-v` | 쿼리 변수 설정 (여러 개 가능) | `--var "year=2024" --var "dept=IT"` | |
| 675 | + |
| 676 | +### 5. 기존 호환성 |
| 677 | + |
| 678 | +기존 방식도 계속 지원됩니다: |
| 679 | + |
| 680 | +```bash |
| 681 | +# 기존 방식 (여전히 동작) |
| 682 | +node src/index.js --xml ./queries/sample-queries.xml |
| 683 | +node src/index.js --query ./queries/sample-queries.json |
| 684 | +``` |
| 685 | + |
| 686 | +--- |
| 687 | + |
| 688 | +## 9. 문의/기여 |
551 | 689 | - 개선 요청, 버그 제보, 추가 기능 문의는 언제든 환영합니다! |
0 commit comments