Background Image

FORUM

조회 수 16016 추천 수 0 댓글 8
?

단축키

Prev이전 문서

Next다음 문서

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

* 질문 등록 시 다음의 내용을 꼭 기입하여 주세요.
OS
Window7 32bit, Linux 64bit 등
CUBRID Ver.
[cubrid_rel] 수행 결과
CUBRID TOOL Ver.
[도움말]-[버전정보] 확인
응용 환경(API)
java, php, odbc 등 입력

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


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


object 데이터 타입에 대한 Insert Into 구문은 어떻게 되는지요?


cubrid manager 에서는 object 타입에 대한

"선택한 행>INSERT문 복사" 명령 실행시

object 컬럼에 대해 미지원 컬럼: 이란 주석으로 나타나고

실제 insert into 구문 실행시 오류가 발생합니다.


object 컬럼에 대한 insert 방식이 따로 존재하는지 궁금합니다.


ODBC에서 쿼리구문 입력시 어떻게 입력해야하는지요?

  • ?
    김창휘 2016.12.27 00:45

    안녕하세요.


    먼저 저의 제품을 사용해 주셔셔 감사드리며 답변이 늦어 죄송합니다.


    INSERT INTO tab2 SELECT col1,CLOB_TO_CHAR(col2) FROM tab1;  /*CLOB에서 VARCHAR로 저장할 경우*/


    INSERT INTO tab1 SELECT col1,CHAR_TO_CLOB(col2) FROM tab2; /*VARCHAR에서 CLOB로 저장할 경우*/


    원하시는 답변인지 확인 부탁드립니다.


    감사합니다.

  • ?
    separk 2016.12.27 01:35

    안녕하세요.

    제가 말씀드린건, 아래의 Cubird 기술문서에서

    http://www.cubrid.com/zbxe/?mid=bbs_developer_tutorial&document_srl=49495&category=148348


    insert into user_info values ('홍길동', '서울 강남구 논현동', 

    { insert into car values ('쏘나타','2000cc',{'은색','흰색','검정색'}),

     insert into car values ('그랜져’,'3000cc',{'은색','흰색','검정색'})

    }

    )

    위 Query 로 실행된 Data에 대해서 Select * from user_info 실행시

    '홍길동', '서울 강남구 논현동, '{@970|1|0, @970|2|0}' 으로 Cubrid Manager 에서 표시되고 있습니다.

    여기서 표시된 값 {@970|1|0, @970|2|0} 에 대해서

    "선택한 행>INSERT문 복사" 명령 실행시 생성되는 Insert 구문

    Insert Into user_info Values ('홍길동', '서울 강남구 논현동, {@970|1|0, @970|2|0}) 구문으로는 정상 실행되지 않습니다.


    user_info의 Object Data Type인 값 {@970|1|0, @970|2|0}에 대한 Insert 구문이 따로 존재하는지 묻고 싶습니다. 


  • ?
    김창휘 2016.12.27 02:43

    두 번째 문의사항에 대해서 답변드립니다.


    CREATE TABLE car (


    [name] char(40),


    spec  string,


    color   SET (char(20)));




    CREATE TABLE user_info (


    name string,


    addr  string,


    carinfo    set(car)


    );


    해당 URL에서 INSERT 구문 COPY시 garbage 문자가 있어 insert 구문이 정상적으로 수행되지 않는 거 같습니다.


    insert 구문에서 '그랜져' 문자의  ' 을 삭제 후 재입력해서 수행하면 정상적으로 수행됩니다. CM상에서도 입력 문자에 대한 색상이 붉은 색으로 변하는 걸 확인하실 수 있습니다.


    insert into user_info values ('홍길동', '서울 강남구 논현동', 

    { insert into car values ('쏘나타', '2000cc', {'은색','흰색','검정색'} ),

     insert into car values ('그랜져', '3000cc', {'은색','흰색','검정색'})

    }

    );



  • ?
    separk 2016.12.27 03:19

    ....

    죄송한데요...

    위 구문으로 실행해서 user_info에 홍길동으로,

    car 라는 테이블에는 쏘나타/그랜저로 테이블이 생성이 완료된 상태입니다.


    car 테이블에 이미 입력되어있는 '쏘나타' , '그랜저' 에 대한 object 값으로 리턴되는 

    {@970|1|0, @970|2|0}) 의 값에 대해, Insert Into 구문을 사용하는 방법을 알려달라는 겁니다.


    저 테이블 그대로를 말로 설명한다면,

    홍길동이 쏘나타와 그랜저를 가지고 있다 라는 설명이 되는데,

    전우치도 동일한 사양의 소나타와 그랜저를 가지고 있다고 하면,

    위 문장을 그대로 실행하면 car에 동일한 값의 쏘나타,그랜저가 추가되는건데,

    그게 아닌 user_info 에 기존의 쏘나타, 그랜저가 들어가는 데이터를 추가하려 한다는거죠.


    기존 select * from user_info 의 데이터를,

    새로 추가하는 Insert Into 로 만들려고 할때, 어떻게 해야하는지



    Insert Into user_info Values ('홍길동', '서울 강남구 논현동', {@970|1|0, @970|2|0}) 구문이

    정상 실행이 안되므로 {@970|1|0, @970|2|0} 값을 사용하는 Insert Into 구문이 가능한지

    물어보는 겁니다. 저 Object 값을 가지고서는 Object 타입의 컬럼에 Insert Into 구문을 사용할수 있는 것은 없는건지요?


  • ?
    김창휘 2016.12.27 03:34
    제가 답변을 이해하기가 어려워서.. 일단 SQL 구문을 보내드리니 원하시는 답변이 맞는지 확인 바랍니다.

    insert INTO car VALUES ('그랜져','',{'@970|1|0', '@970|2|0'}) ;

    Insert Into user_info Values ('홍길동', '서울 강남구 논현동', {insert INTO car VALUES ('그랜져','3000c',{'@970|1|0','@970|2|0'})}); 
  • ?
    separk 2016.12.27 19:52

    제 설명이 잘못되었나봅니다.

    insert INTO car VALUES ('그랜져','',{'@970|1|0', '@970|2|0'}) ;  <= 이 문장이 실행이 되지 않아

    질문을 드린건데, 아랫분이 정확히 설명해주셔서 답변이 되었습니다.


    도움 주셔서 감사합니다.

  • ?
    오명환 2016.12.27 19:23

    insert를 모든 구문에서 OID('@970|1|0')를 직접 사용할 수 없습니다.

    사용자께서 원하시는 것은 car class에 있는 '그랜저'와 '쏘나타'의 OID를 userinfo class에 있는 '홍길동' user와 함께는 넣는 것 같습니다.

    아래 구문을 사용하시면 원하시는 것을 얻을 수 있습니다.


    insert into user_info values ('홍길동', '서울 강남구 논현동', select (select set(select car from car where name in ('그랜져', '쏘나타'))))

     

    매뉴얼을 참고하세요.

    http://www.cubrid.org/manual/ko/9.3.0/sql/function/set_op.html#set-multiset-list


  • ?
    separk 2016.12.27 19:51

    음.. 그러니까 Select 해서 보여주게 되는 '@970|1|0' 값들은 OID이고,

    그 OID문장을 사용하여 Insert 구문으로 넣는 방식은 없다는 말씀인거죠?


    감사합니다.

    도움이 되었습니다.


List of Articles
번호 제목 글쓴이 날짜 조회 수
공지 CUBRID 사용자를 위한 DBeaver 도구 출시 안내 admin 2024.04.23 21
공지 SQLGate for CUBRID 영구 무료 라이선스 제공 file admin 2020.04.09 4452
1211 Context requires compatible collations 오류 1 소소 2016.02.25 9922
1210 PHP 인스톨 중 에러입니다. 6 들뿔 2012.03.26 9924
1209 서버사양에 대한 설정문의 5 초보 2010.04.14 9926
1208 큐브리드 R2.2 PHP모듈 XP서 컴파일 방법 문의 1 아장아장 2010.06.05 9927
1207 큐브리드 매니져에서 sql 질의시 오류발생하면 한글메시지가 깨져보입니다. 1 풍운룡 2013.08.14 9938
1206 webservice로 데이터 입력시 한글이 점으로 입력되는 문제 4 알칸펠 2013.11.05 9945
1205 컬럼의 길이를 잘못 가져옵니다. rs.getMetaData.getColumnDisplaySize(1); 1 검풍이 2013.01.22 9951
1204 브로커의 sql로그 분석하면 File(log_top.q) open error 라고 뜹니다. 4 안토니오 2010.07.24 9954
1203 SQL 에러 질문 1 카르마 2010.10.16 9958
1202 큐브리드에도 테이블 정보를 담고 있는 DB가 있나요? 2 파란토끼 2013.09.27 9959
1201 리눅스 환경에서 자동실행.... 1 석균 2012.06.25 9963
1200 cubridmanager 의 호스트 목록이 가끔 사라집니다. 1 하야로비 2010.03.19 9975
1199 비쥬얼 스튜디오 2005에서 MFC로 프로그램을 개발 했을 때의 DB 연결 2 틈새 2013.03.06 9980
1198 해시분할 문의 2 초보 2010.04.10 9983
1197 C++ Embedded SQL에서 호스트 변수로 클래스 데이터 선언 가능 여부 문의 1 리겔 2012.04.20 9983
1196 디비 사용자 추가시 오류 문의드립니다. 1 큐브초보 2010.03.24 9984
1195 QTADO와 OLEDB사용시 문제 4 flypig 2010.01.29 9989
1194 oracle_style_empty_string 의 설정 관련 group_concat 함수 사용 문제 1 혁이 2013.07.18 9995
1193 data_buffer_page 를 300000 이상으로 늘렸더니 1 초보 2010.02.02 9996
1192 visual-sql 설치 파일 2 무시2 2010.09.29 10000
Board Pagination Prev 1 ... 135 136 137 138 139 140 141 142 143 144 ... 200 Next
/ 200

Contact Cubrid

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