Background Image

FORUM

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

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄
CREATE TABLE TBL_TEST
(
 FLD_ID INTEGER AUTO_INCREMENT PRIMARY KEY,
 FLD_NUMBER INTEGER
)

위와 같이 테이블이 만들어져 있고, 계속 인서트가 될 때 가장 마지막에 인서트된 레코드의 FLD_ID 필드의 값이 얼마인지
알아낼 수 있는 함수가 있나요?
MySQL에는 LAST_INSERT_ID()라는 함수가 같은 역할을 하는 것 같은데요.
  • ?
    손승일 2009.12.22 23:22
    auto_increment 컬럼은 내부적으로 serial 객체에 의해 관리되어지므로 해당 객체를 조회함으로 확인이 가능합니다.
    auto_increment 컬럼이 생성되면 serial 객체에 등록되는데, 이때 serial name이 "테이블명_ai_컬럼명"의 형태로 명명됩니다.
    질문하신 내용을 가지고 설명을 드리면, 해당 auto_increment 컬럼의 serial name이 tbl_test_ai_fld_id이 됩니다.
    이것을 가지고 현재 값을 읽어 오는 것은 select tbl_test_ai_fld_id.current_value from db_root; 을 수행하면 현재의 값을 가져올 수 있습니다.
    여기서 한가지 주의해야할 사항은 serial_name.current_value는 현재의 값을 가져오는 것이지 마지막 값을 가져오는 것은 아닙니다. current_value 호출 중이나 이후에 다른 트랜잭션에 의해 insert가 발생하였으면 값은 변경되었을 것입니다.

    MySQL의 LAST_INSERT_ID는 해당 트랜잭션에서 증가한 값을 가져오는 것입니다.
    질문하신 내용이 LAST_INSERT_ID와 동일한 동작을 원하는 것이라면 serial_name.current_value는 사용할 수 없습니다.
    응용이 JDBC를 사용하시는 거라면 CUBRID에서 제공하는 JDBC API 중에 관련된 API가 있습니다.
    CUBRID 매뉴얼의 >API레러런스>JDBC API>JDBC 프로그래밍>자동 증가 특성의 컬럼 값 검색(http://www.cubrid.com/online_manual/cubrid_820/api/api_jdbc_programming_autoincr.htm) 을 참고하시기 바랍니다.

  • ?
    hyperhand 2009.12.23 00:09
    감사합니다. 많은 도움 되었습니다^^

  1. No Image notice by admin 2024/04/23 by admin
    Views 50 

    CUBRID 사용자를 위한 DBeaver 도구 출시 안내

  2. SQLGate for CUBRID 영구 무료 라이선스 제공

  3. set type 에 빈값넣기

  4. ODBC 로 insert 가 안되네요 ㅠㅠ...

  5. 리눅스서버상에 존재하는 CUBRID 데이터베이스를 CUBRID메니져클라이언트로 접속

  6. CSQL 에서 CREATE USER로 계정 생성시 문의 점

  7. Java sp에서 Sybase DB연결시 오류.

  8. CUBRID 시작후 csql로 시작할 때 에러가 발생합니다.

  9. php, cubrid에서 그림, 동영상파일업로드코딩중인데요.

  10. C-API 매뉴얼 위치요?

  11. 큐브리드 2008 버전이 다운로드 않됩니다.

  12. set 객체 정보까지 어떻게 검색합니까?

  13. 큐브리드를 사용해 윈도환경에서 사용할 프로그램을 개발코자 합니다

  14. 쿼리 확인 부탁 드립니다.

  15. 날짜 기본값 처리 방법 문의 드립니다.

  16. 쿼리의 물음표에 대해 문의드립니다.

  17. cubrid 설치전 php설치에서

  18. CUBRID 2008 R2.0에서 R2.1로 업그레이드 시

  19. 형변환 오류 문의

  20. 큐브리드 메니저 데이터베이스검사시 에러문구

  21. 데이터베이스 오류문제

  22. 큐브리드는 mysql 의 varchar(255) 와 동일한 길이가 아니네요?

Board Pagination Prev 1 ... 171 172 173 174 175 176 177 178 179 180 ... 200 Next
/ 200

Contact Cubrid

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