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
1014 이진 데이터를 Stored Procedure에 넘기는 방법 7 hyperhand 2009.12.23 14060
1013 이클립스 DBViewer에서 1분정도 지나면 컨넥션이 끊어집니다. 2 천타에 허리한번 펴자 ㅡㅡ; 2009.06.04 16332
1012 인덱스 scan 문의합니다 1 모모 2020.10.07 202
1011 인덱스 관련 문의입니다. 1 wook 2020.09.10 72
1010 인덱스 사용 관련하여 문의드립니다. 1 neighbor 2023.12.12 113
1009 인덱스 함수 생성 문의 1 후후후후후후후후 2021.09.01 433
1008 인덱스가 가끔 깨집니다. 도와주세요. 2 훈이아빠 2017.11.21 1649
1007 인덱스가 많이 설정된 데이터 삭제시 오래 걸리는지 여부 1 나라디 2022.06.29 187
1006 인덱스가 실행이 안되는 것 같아서 요청 드려 봅니다. 3 취우다 2017.04.15 9768
1005 인덱스를 엉뚱한 걸 타고 있습니다??! 9 file Philip Park 2020.11.26 299
1004 인서트 시 IX_LOCK 문의 1 joke7 2016.03.14 7710
1003 인코딩 관련 1 song 2008.12.17 21518
1002 인코딩 문의. 1 우페 2008.12.09 19218
1001 인코딩 문제와 권한 문제입니다. 1 싸댕 2016.12.15 15534
1000 인터프리터 로그 남기는 설정 문의드립니다. 1 sspark 2018.01.10 236
999 일반사용자 시스템 테이블 접근 권한 제어관련 질문드립니다. 1 dkhwang 2020.07.03 316
998 일시적 임시 볼륨이 계속 증가하는 현상 1 secret ssk 2015.11.07 8
997 일정시간 지나면 접속 안됨 12 chocob 2015.08.12 8828
996 일정한 주기마다 비밀번호를 바꾸는 설정을 하고 싶습니다. 1 dunkin23 2018.01.10 420
995 임시볼륨 늘어나는 문제 1 angdoo 2023.11.21 96
Board Pagination Prev 1 ... 145 146 147 148 149 150 151 152 153 154 ... 200 Next
/ 200

Contact Cubrid

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