본문 바로가기

개발일지/C#

[ C# / CUBRID ] 프로젝트 정리 3 - cmd로 큐브리드 서버 실행 및 테이블 생성

https://choittolbok.tistory.com/348

 

[ C# + CUBRID ] 프로젝트 정리 2 - 큐브리드 설치 후 프로젝트 내 참조 추가

이번 프로젝트에서 사용하는 DB는 CUBRID이다. 실제 프로그램을 돌리는 PC는 접속이 불가한 상황이라 로컬에 세팅 후 프로그램을 제작해야 했기 때문에 아래와 같은 방법으로 설치를 해준다. 1. 먼

120ne.xyz

 

위에서 C#내에서 큐브리드 사용을 위한 세팅까지 끝났다면 내 로컬에 DB 환경을 만들어주고, 그 로컬 DB에 접속해서 테이블을 사용할 수 있도록 설정해야 한다.

 

레츠 기릿~~!

 

 

1. CUBRID 서버가 실행 되는지 확인

C:\Windows\System32>cubrid service start
++ cubrid service is running.

C:\Windows\System32>cubrid service status

@ cubrid master status
++ cubrid master is running.
@ cubrid server status
@ cubrid pl status
@ cubrid broker status
  NAME                   PID  PORT    AS   JQ                  TPS                  QPS   SELECT   INSERT   UPDATE   DELETE   OTHERS     LONG-T     LONG-Q         ERR-Q  UNIQUE-ERR-Q  #CONNECT   #REJECT
===========================================================================================================================================================================================================
* query_editor         48200 30000     5    0                    0                    0        0        0        0        0        0     0/60.0     0/60.0             0             0         0         0
* broker1              11248 33000     5    0                    0                    0        0        0        0        0        0     0/60.0     0/60.0             0             0         0         0
@ cubrid gateway status
++ cubrid gateway is not running.
@ cubrid manager server status
++ cubrid manager server is running.

 

위와 같이 출력된다면 정상적으로 실행이 되었다는 것

 

@ cubrid server status

이 아래 서버명과 실행되었다는 설명이 없다면 실행은 되지만 서버가 비어 있다는 뜻

 

 

2. DB 생성 + DB 생성 오류

C:\Windows\System32>cubrid createdb mydb en_utf8
Creating database with 512.0M size using locale en_utf8. The total amount of disk space needed is 1.5G.
Couldn't create database.
Locale initialization: invalid value en_utf8 for charset.

 

이 오류는 en_utf8이라는 로케일(locale)이 CUBRID에 등록되어 있지 않아서 생긴 문제이고, 로케일(Locale)이란 어떤 나라의 언어 및 문자 형식으로 데이터를 저장할지 정하는 것이다. 

 

예시 : 
ko_KR → 한국어 
en_US → 영어(미국)

 

 

2-1) 로케일 등록 방법

C:\Windows\System32>cubrid createdb mydb ko_KR
Creating database with 512.0M size using locale ko_KR. The total amount of disk space needed is 1.5G.

CUBRID 11.4

 

 

데이터가 대부분 한글일테니 ko_KR 인코딩 방식으로 설치해주면 된다. 중간에 멈추지 않고 아래 큐브리드까지 출력되면 등록 끝

 

 

3. DB 서버 실행 및 DB 접속

C:\Windows\System32>cubrid server start mydb
++ cubrid server start: success

C:\Windows\System32>csql -u dba mydb

        CUBRID SQL Interpreter


Type ;help' for help messages.

 

4. 테이블 생성

(아래는 임의로 지정한 테스트 컬럼명이다.)

CREATE TABLE TEST_TABLE (
    id              VARCHAR(20)      NOT NULL,         -- 서비스 ID
    car_number      VARCHAR(17),                      -- 차량번호
    reg_number      VARCHAR(13),                      -- 주민등록번호
    biz_number      VARCHAR(10),                      -- 사업자등록번호
    insurance_flag  VARCHAR(1),                       -- 보험 여부
    insurance_name  VARCHAR(50),                      -- 보험사 이름
    start_date      VARCHAR(20),                      -- 보험 시작일
    end_date        VARCHAR(20),                      -- 보험 종료일
    process_status  VARCHAR(5),                       -- 처리 상태
    send_flag       VARCHAR(1),                       -- 전송 여부
    read_flag       VARCHAR(1),                       -- 읽음 여부
    pc_code         VARCHAR(2),                       -- PC ID
    error_message   VARCHAR(100),                     -- 에러 메시지
    insert_date     DATETIME,                         -- 등록일
    update_date     DATETIME,                         -- 수정일
    image_blob      BLOB,                             -- 이미지 (BLOB)
    user_name       VARCHAR(100),                     -- 사용자 이름

    PRIMARY KEY (id),
    INDEX idx_car_number (car_number)
);
csql> Execute OK. (0.012585 sec) Committed. (0.000316 sec)
csql> 1 command(s) successfully processed.

 

위와 같이 뜬다면 생성이 완료 되었다는 뜻

 

 

INSERT INTO TR_INSURANCE VALUES (
  'TEST-000000-00001', 'TESTCAR1234567890', '9001011234567', '1234567890',
  NULL, NULL, '2025-01-01', '2025-12-31',
  'REQ', 'Y', 'C', '1',
  NULL, DATE'2025-06-04', NULL,
  NULL, '홍길동'
);

 

INSERT는 위와 같이 넣어주면 되고, 아래 메세지가 뜨면 생성이 완료된 것

 

1 row affected. (0.013274 sec) Committed. (0.000012 sec)

1 command(s) successfully processed.

 

 

 

 

 

나머지는 아침에 기말 보고와서 마저 남겨야 할 듯 하다.

너무 피곤하다..