|
이승원 님이 쓰신 글 :
: 다른생각 님이 쓰신 글 :
: : 안녕하세요? 저도 처음 글을 남기네요..^^
: : 저또한 얼마전에 C++ Builder를 접했죠..
: : 스터디를 하면서 가장 크게 느꼈던건 역시...참고 자료의 희귀성(?) 이었습니다.
: : 얼마 후에 나올 책만을 기다리고 있죠..
: : 아래의 코드는 제가 연습삼아 만들어본 우편번호 검색기 인데요..
: : 하다가 막힐때마다 HELP같은거 찾아보고 만든거라 좀 난잡스럽지만..
: :
: : DB연결은 승원님같이 DDBC를 썼고..
: : TADOQuery를 사용해 자료를 DB로 부터 가져 왔습니다..
: : 허접스러워 올리기 부끄럽지만..혹시라도 참고하시면 어떨가 해서요..^^
: :
: : //---------------------------------------------------------------------------
: : // 시(도), 구(군), 동까지 모두 선태됐으면 우편번호 테이블을 조회해
: : // 그리드에 보여줌
: : void __fastcall TForm1::ComboBox3Change(TObject *Sender)
: : {
: : String strTemp = NULL;
: :
: : // 조건에 해당하는 우편번호 목록을 가져옴
: : ADOQuery1->SQL->Clear();
: : ADOQuery1->SQL->Add("SELECT zipcode, sido, gugun, dong, ri, st_bunji, ed_bunji ");
: : ADOQuery1->SQL->Add("FROM ZIPCODE ");
: : strTemp = "WHERE sido = '" + ComboBox1->Text + "'";
: : ADOQuery1->SQL->Add(strTemp);
: : strTemp = "AND gugun = '" + ComboBox2->Text + "'";
: : ADOQuery1->SQL->Add(strTemp);
: : if(ComboBox3->Text != "전체")
: : {
: : strTemp = "AND dong = '" + ComboBox3->Text + "'";
: : ADOQuery1->SQL->Add(strTemp);
: : }
: : //ShowMessage(ADOQuery1->SQL->GetText());
: :
: : ADOQuery1->Open();
: :
: : DataSource1->DataSet = ADOQuery1;
: :
: : // 가져온 우편번호 목록은 그리드의 DataSource만 설정해주면 자동으로 보여짐.
: : DBGrid1->DataSource = DataSource1;
: : }
: :
: : 같이 열심히 해보자구요..^^
: :
: 먼저 답변 해주신거 감사하구요... 잘 봤습니다... 근데 제가 하려는 거의 문제점은
: 가져온 데이터를 화면상에 보여주는것이 아니고, 제 디비에서 가져온inumber(정수)를
: 변수에 저장하고 그것을 가지고 연산을 하고 싶습니다. 알고 계시면 다시한번 부탁드립니다..
: 그럼 즐거운하루 되세요....
ADOQuery1->Open(); //요거후에...
if (ADOQuery1->Eof) return; //데이타가 없는 경우...
int inumber = ADOQuery1->FieldByName("inumber")->AsInteger; //이렇게 하시면 됩니다.
//데이타 갯수가 많을때는..
int inumber;
ADOQuery1->First();
while (!ADOQuery1->Eof) {
inumber = ADOQuery1->FieldByName("inumber")->AsInteger;
//하고싶은 처리......
//
ADOQuery1->Next();
}
요렇게 한번 해보세요.... 기본적인 처리입니다...
|