|
질문의 요지가... select count(*) from ... 쿼리의 결과를 변수로 받아오면 되는 건가요..?
ADODataSet->CommandText = "select count(*) from ... ";
ADODataSet->Open();
int iCount = ADODataSet->Fields->Fields[0]->AsInteger;
ADODataSet->Close();
이렇게 하면 iCount 변수로 들어오죠.
그런데.. 일련번호를 매기실 거면, select count(*) 로 하는 것보다는 select max(*) 로 하는 것이 맞겠죠.
만약 중간에 하나라도 삭제되었다면 count(*)는 최대값이 아니라 갯수를 리턴하기 때문에 디비에 존재하는 값과 중복된
값이 나오게 될 겁니다.
그럼...
유랑 님이 쓰신 글 :
: 안녕하세요.
: 언제나 좋은 하루 되시기를 바랍니다.
:
: 너무나 초보적인 질문인데 이틀밤을 골머리 싸다가 여기서 질문란과 여러 게시판을 뒤지다 포기하고,
: 이렇게 글을 올립니다.
:
: ADO 를 이용해서 DB에 연결 했습니다.
:
: ADOConnection를 이용해서 연결하고,
: ADOCommand로 쿼리문 돌리고,
: ADODataSet와 DataSource를 이용하여 값을 받고
: DBGrid를 이용하여 값을 뿌렸습니다.
:
: 여기에서 값을 입력하면 일련 번호를 붙일려고 하는데
: select count(*) from names 를 써서 현재갯수+1 로 하는것 까지는 알겠는데요,
:
: 여기서 문제점이
: select count(*) from names 와 같은 SQL문을 돌리면
: 숫자 값이 결과로 나오게 되는데요,
: 이 결과를 변수로 저장하는 법이 궁금합니다.
:
: 제가 생각을 너무 쉬은걸로 착각하는거 아닌지 모르겠네요.;;;
: 그럼 잘 부탁드리겠습니다.
: 꾸벅 (__);;;
|