본문으로 건너뛰기

데이터베이스 연결과 검증

Board 테이블을 만들기 전에 HandStack과 SQL 편집기가 같은 DB 파일을 사용하는지 확인합니다.

연결 파일 확인​

  1. 실습용 BOD010.xml의 header/datasource를 확인합니다. 예제 값은 DB01입니다.
  2. 실행 환경의 modules/dbclient/module.json에서 해당 애플리케이션·프로젝트에 적용되는 DataSourceID: "DB01"의 연결을 찾습니다. 키와 적용 범위는 dbclient 설정을 참고하세요.
  3. 연결 문자열의 SQLite 파일 경로를 확인하고 SQL 편집기에서 그 파일을 엽니다. 상대 경로라면 실행 환경에서 해석되는 실제 절대 경로를 먼저 확인합니다.

현재 소스의 예제 DB 경로는 ../sqlite/HDS/dbclient/HDS.db입니다. 배포본이나 설정에 따라 달라질 수 있으므로 이 경로를 그대로 복사하지 마세요. 임의로 board.db를 만들어도 DB01 연결은 자동으로 바뀌지 않습니다.

실습 DB만 변경하세요

운영 데이터베이스와 분리된 실습 환경을 사용합니다. 기존 테이블이나 데이터가 있다면 삭제·초기화하지 말고 먼저 백업과 연결 대상을 확인하세요.

테이블과 초기 데이터 준비​

Board 테이블 설계의 DDL을 실습 DB에서 실행합니다. 이미 테이블이 있으면 컬럼을 비교하세요.

다음 SQL로 데이터 한 건을 넣습니다. 반복 실행하면 행이 추가됩니다.

INSERT INTO Board (Category, Title, Content, Author, DatePosted)
VALUES ('정보', '정보 게시물 제목1', '정보 게시물 내용1', '개발자',
datetime('now', 'localtime', '-1 day'));

완성 예제의 초기화 버튼을 대신 사용하려면 데이터 삭제 주의 사항을 먼저 읽으세요. 이미 데이터를 준비했다면 다시 초기화하지 않습니다.

조회로 검증하기​

SELECT ID, Category, Title, Author, DatePosted
FROM Board
ORDER BY ID DESC;

방금 넣은 제목이 조회되면 준비가 끝났습니다. 이후 화면 조회에서는 입력기간에 이 행의 DatePosted가 포함되도록 설정합니다.

실패하면​

증상확인할 것
테이블 생성 실패실제 파일 경로와 쓰기 권한
방금 넣은 행이 없음같은 DB 파일인지, 트랜잭션을 커밋했는지
SQL 편집기에서는 보이지만 HandStack에서는 안 보임실행 중인 DB01 연결과 SQL 조회 조건

이제 목록 화면 작성으로 진행합니다. SQL을 HandStack 계약으로 옮기는 단계는 dbclient SQL 계약에서 다룹니다.