Background Image

FORUM

조회 수 18072 추천 수 0 댓글 7
?

단축키

Prev이전 문서

Next다음 문서

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

 이미 데이타가 들어가 있는 테이블에서 자동증가 컬럼을 하나 추가한뒤 조회를 해보니

 새로 추가한 자동증가 컬럼에 데이타가 NULL 이 되어 있습니다.

 추가한 자동증가 컬럼에 자동증가 숫자데이타가 들어가게 하려면 어떻게 하죠?
  • ?
    seongjoon 2010.02.27 04:00
    기존의 테이블에 auto_increament 속성을 가지는 column을 추가하게 되면, 기존의 데이터에서 추가된 column의 데이터에 NULL 값이 들어가게 됩니다.
    이러한 문제를 해결하기 위해서는 기존의 컬럼과 auto_increment 컬럼을 추가하여 새로운 테이블을 생성하시고 다시 데이터를 입력하셔야 됩니다.
    예를 들면,
    기존의 테이블 table_old가 create table table_old(col1 char); 이라면
    새로운 테이블 table_new를 create table table_new (col1 char, col2 int auto_INCREMENT); 와 같이 생성하고
    insert into table_new(col1) select col1 from table_old; 와 같은 쿼리문을 이용하여 데이터를 입력하시면 됩니다.
    그 후에, drop table table_old; 쿼리로 기존의 테이블을 삭제하시고, rename table table_new as table_old; 쿼리로 테이블의 이름을 변경하면 작업이 끝납니다.
  • ?
    남재우 2010.03.01 21:19
    안녕하세요.
    보다 간단한 방법을 알려드리겠습니다.
    자동증가는 내부적으로 serial 을 통해 관리하므로, 그 serial 값을 이용하여 update 하시면 됩니다. my_table에 i 라는 필드가 자동증가 속성을 가진다면 그 serial 은 my_table_ai_i 라는 이름을 가집니다. 그 serial 을 이용하여 업데이트 하면 됩니다.
    update my_table set i = my_table_ai_i.next_value
  • ?
    초보 2010.03.02 18:49
    nb_board 라는 테이블에  bo_id 라는 자동증가 컬럼 이라서
    update nb_board_info set bo_id = nb_board_info_ai_i_next_value 라고 쿼리를 날리니

    오류 설명:
    시멘틱: nb_board_info_ai_i_next_value 은(는) 정의되지 않았습니다.
    라는 오류가 났습니다.

    어떻게 하죠?
  • ?
    seongjoon 2010.03.02 19:55
    nb_board_info_ai_i_next_value 이 아니라nb_board_info_ai_i.next_value 입니다.
    i와 next 사이에 "_" 가 아니라 "." 입니다.
  • ?
    초보 2010.03.04 01:09 Files첨부 (1)
    이렇게 고쳐도 안되네요
  • ?
    cubebridge 2010.03.04 01:23
    먼저 올라온 덧글에 따르면 수정된 쿼리문은 아래와 같을 것 같습니다.
    update nb_board_comment set cm_id=nb_board_comment_ai_cm_id.next_value
    적색으로 표시된 부분은 자동증가가 일어나는 칼럼의 이름입니다. 첨부하신 내용에 따르면 아무런 연관이 없는 i를 넣으셨기 때문에 오류가 발생한 것입니다. 정확한 serial이름을 확인하기 위해서는 아래와 같이 수행해서 serial을 찾으시기 바랍니다.
    csql>select name from db_serial
    csql>;x
    CUBRID Manager에서도 확인이 가능합니다. 위의 결과로 나온 이름이 nb_board_comment_ai_cm_id와 일치할 것입니다. 
  • ?
    남재우 2010.03.04 08:09
    update nb_board_info set bo_id = nb_board_info_ai_bo_id.next_value
    와 같이 하시면 됩니다. 
    nb_board_info_ai_bo_id 에서 nb_board_info 는 테이블이름이며, bo_id 가 자동증가 속성을 가진 필드이름입니다. 가운데의 ai 는 자동증가인 auto increment 의 약자입니다. <테이블이름>_ai_<필드명> 이런식으로 시리얼개체가 만들어집니다.

List of Articles
번호 제목 글쓴이 날짜 조회 수
공지 CUBRID 사용자를 위한 DBeaver 도구 출시 안내 admin 2024.04.23 48
공지 SQLGate for CUBRID 영구 무료 라이선스 제공 file admin 2020.04.09 4458
3774 php에서 cubrid_connect 이부분이 조금.. 2 레드오리 2008.12.19 18095
3773 primary key 가 중복으로 들어가네요.. 3 file 봉보로봉봉 2017.01.04 18090
» 자동증가 컬럼수정후 자동증가값이 들어가게 하려면? 7 초보 2010.02.27 18072
3771 데이터바인딩? 2 우페 2008.12.12 18025
3770 trunc 함수 질문입니다. 1 BI 2016.11.02 18020
3769 컬럼명을 한글로 하였을 경우 쿼리 속도에 영향을 받을 수 있을까요? 1 spowner 2009.04.07 18012
3768 호스트 추가 1 karay2k 2011.12.17 17928
3767 설치관련 다시 질문 올립니다. 2 해바라기 2008.12.05 17858
3766 웹서버(Win)와 DB서버를 분리할 때 odbc설치 방법 2 안지민 2009.06.26 17827
3765 Fedra 10 에서 8.1.4 설치 문의 2 스나이퍼 2009.03.26 17804
3764 execute 실행시 Attribute column was not found 에러 관련 문의 3 file 도미켄 2021.02.25 17779
3763 우분투 릴리즈 설치 지원 안되나요? 3 Hoya 2009.05.19 17739
3762 php 5.3.1 / php extension 컴파일 오류 있네요... 1 disablerain 2009.12.11 17728
3761 PHP 버젼에 따라.. 값을 인식하지 못하는 현상(?) 3 레드오리 2008.12.24 17693
3760 JDBC드라이버 접속에러... 1 서종률 2009.01.07 17661
3759 큐브리드 포트에 대해서... 3 레드오리 2008.12.23 17653
3758 AUTO_INCREMENT 컬럼 이용시 2 hyperhand 2009.12.22 17649
3757 업데이트 보완 문제 해결요청 1 가라 가라~ 2009.01.20 17592
3756 erwin xml 스키마 내보내기 기능 1 chocob 2014.04.02 17589
3755 service tray 실행 안됨 3 file 바부대왕 2009.02.24 17574
Board Pagination Prev 1 ... 7 8 9 10 11 12 13 14 15 16 ... 200 Next
/ 200

Contact Cubrid

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