Background Image

FORUM

조회 수 748 추천 수 0 댓글 2
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄

* 질문 등록 시 다음의 내용을 꼭 기입하여 주세요.
OS
Window7 64bit
CUBRID Ver.
CUBRID 10.1
CUBRID TOOL Ver.
CUBRID Manage 10.1.0.0003(64bit)
응용 환경(API)
java

* CUBRID 응용 오류, SQL 오류 또는 SQL 튜닝 관련된 문의는 반드시 다음의 내용을 추가해 주세요. 비밀글이나 비밀 댓글도 가능합니다.
* 저희가 상황을 이해하고, 재현이 가능해야 알 수 있는 문제들이 많습니다. 가능한 정보/정황들을 부탁합니다.
에러 내용 및 재현 방법 재현 가능한 Source와 SQL
관련 테이블(인덱스, 키정보 포함) 정보 CUBRID 홈 디렉토리 아래 log 디렉토리 압축


-------------- 아래에 질문 사항을 기입해 주세요. ------------------------------------------------------------------------

안녕하세요.


oracle에서 cubrid로 DB 마이그레이션 하면서 궁금한 사항 몇가지 문의 드립니다.


1. oracle sequence 문의

아시다시피 oracle에는 auto_increment가 없어 sequence로 자동증가를 설정합니다.

cubrid에는 auto_increment와 serial이 있는데, 기본키를 auto_increment로 해야할지, serial로 해야할지 궁금합니다.

oracle을 마이그레이션 한거다 보니 serial이 맞을 것 같은데, insert 할 때, serial_next_value(serial명)으로 키 값을 지정해야주어야 insert가 되더라구요.

auto_increment 같은 경우에는 갑 지정이 없어도 insert가 되구요.

어떤 방식으로 해야 더 효율적일지 문의 드립니다.


2. oracle 기본키 number 문의

oracle 기본키가 number로 sequence가 걸려있습니다.

cubrid로 마이그레이션 결과 number(38,15)로 되어 소수점이 많이 발생합니다.

이럴 경우, int로 타입 변환을 해주는게 맞는 건가요?



* cubrid 공부하면서 진행하고 있는지라 질문내용이 부족해 죄송합니다.

  • ?
    오명환 2018.02.14 14:02
    1. oracle sequence를 대체하는 방법은 문의하신것처럼 응용에 따라 auto_increment와 serial 둘 중 하나를 사용하시면 됩니다.
    auto_increment가 내부적으로 serial 객체를 사용하는 것이라 내부적으로 동일합니다.
    단, serial이 oracle의 sequence와 다른 점은 rollback이 되지 않습니다. 즉, 한번 serial 객체는 내부적으로 auto commit이기 때문에 transaction와 무관하게 작동하게 되어 있습니다.
    이 부분은 참고하세요.

    2. oracle의 number는 cubrid에서는 numeric 으로 표현됩니다.
    numeric을 primary key로 사용하시는데 문제는 없으나, 어떤의미에서 문의하시는 것인지 파악하기 힘들어 답변드리기가 힘드네요.
    어떤 의미로 문의를 하신 것인지를 알려주시면, 답변을 드리도록 하겠습니다.
  • ?
    turbo_jdh 2018.02.20 13:51

    오명환님. 답변 감사합니다.

    2번 질문에서 oracle to cubrid 마이그레이션 시, oracle의 number 타입의 컬럼들이 numeric(38,15)로 자동 변경되어
    컬럼 조회 시, 컬럼 값에 소수점이 출력되어 나와서 문의 드린 것입니다.
    실제 cubrid에서 numeric으로 테이블을 생성해보니 numeric(15,0)으로 생성되네요.
    현재는 마이그레이션 시, oracle 컬럼 중 number 타입 컬럼을 모두 int로 변경하여 마이그레이션하였습니다.(소수점 컬럼 제외)
    결론적으로, int형이나 numeric(15,0)으로 사용하면 될 것 같습니다.


List of Articles
번호 제목 글쓴이 날짜 조회 수
공지 SQLGate for CUBRID 영구 무료 라이선스 제공 file admin 2020.04.09 4440
3865 CUBRID to Tibero DBLink지원 가능한지 알고싶습니다. 1 공공기관에서사용중1 2023.06.28 137
3864 ELO타입이 무엇인가요? 1 sobubble 2023.06.27 115
3863 백업파일 받았는데 복구하는 방법을 모르겠습니다. 4 Ggyak 2023.06.20 181
3862 UTF8 한글이 깨짐 4 file yonggi 2023.06.19 266
3861 저장 프로스저에 있는 함수 상세보기 문의입니다. 1 대출인생30년 2023.06.12 82
3860 MERGE INTO 속도 개선 문의 1 leeee 2023.06.12 129
3859 NX_transcation 1 yoo 2023.06.12 79
3858 cubrid cursor.close() 에러 관련질문 3 힘내자화이팅 2023.06.08 185
3857 merge 쿼리 속도개선 2 leeee 2023.06.08 109
3856 브로커(CAS)수 질문드립니다! 8 요시니 2023.06.05 152
3855 데이터 이관 문의입니다. 1 kipo0821 2023.05.30 129
3854 8.4.4 charset. Collation 확인 방법 네오랜덤 2023.05.24 185
3853 8.4.4버젼 charset 확인 3 네오랜덤 2023.05.23 190
3852 쿼리 속도 차이 질문 1 하얀미스 2023.05.18 142
3851 spring boot 에서 HikariPool-1 - Driver does not support get/set network timeout for connections. (java.lang.UnsupportedOperationException) 질문 드립니다. 3 kjaminam 2023.05.18 764
3850 cci 프로그래밍에서 DB LINK 관련 문의 4 jjune1206 2023.05.18 127
3849 큐브리드 매니저 실행이 오류 1 file 청주시청 2023.05.18 101
3848 ddl 추출 1 네오랜덤 2023.05.17 104
3847 하나의 쿼리에서 복수 테이블 업데이트 방법 문의 4 도담도담 2023.05.17 134
3846 cubrid driver 설치 문의 1 고구망구망 2023.05.08 436
Board Pagination Prev 1 2 3 4 5 6 7 8 9 10 11 ... 200 Next
/ 200

Contact Cubrid

대표전화 070-4077-2110 / 기술문의 070-4077-2113 / 영업문의 070-4077-2112 / Email. contact_at_cubrid.com
Contact Sales