C++Builder Programming Forum
C++Builder  |  Delphi  |  FireMonkey  |  C/C++  |  Free Pascal  |  Firebird
볼랜드포럼 BorlandForum
 경고! 게시물 작성자의 사전 허락없는 메일주소 추출행위 절대 금지
C++빌더 포럼
Q & A
FAQ
팁&트릭
강좌/문서
자료실
컴포넌트/라이브러리
메신저 프로젝트
볼랜드포럼 홈
헤드라인 뉴스
IT 뉴스
공지사항
자유게시판
해피 브레이크
공동 프로젝트
구인/구직
회원 장터
건의사항
운영진 게시판
회원 메뉴
북마크
볼랜드포럼 광고 모집

C++빌더 Q&A
C++Builder Programming Q&A
[47906] 쿼리문 작성 맞습니다~ 버튼클릭 이벤트에 다 넣으심 될듯하네요~
조대현.Clau [casanebula] 1960 읽음    2007-01-26 14:43
void __fastcall TForm2::Button1Click(TObject *Sender)
{
    // 럽투유님의 ADOConnect 객체의 접속여부 확인
    if(!ADOConnectionConfig->Connected){
        return NULL;
    }

    // 쿼리문 작성
    ADOQuery1->SQL->Text = WideString("Select * from output_data where id > 0 and indate ='"+ textbox->text +"');
    // 접속 실행
    ADOQuery1->Active = true;
    // 쿼리 결과가 있는지 확인
    if(ADOQuery1->RecordCount > 0){
        // 가장 처음의 레코드로 이동
        ADOQuery1->First();
        // 원하는 곳에 결과 리턴
        textboxresult->text = ADOQuery1->FieldByName("indate")->AsString;
    }
    else{
        // 검색 결과가 없으면 에러 메세지 표현
        MessageDlg(FieldName + " Failed.", mtError,TMsgDlgButtons()<<mbYes,0);
    }
    // 접속 해제
    ADOQueryConfig->Active = false;
}

종합하면 이런 소스가 되겠군요. 물론 테스트 안했습니다. :D

쿼리하는 순서를 보자면

SQL접속->쿼리문작성->쿼리문날리기->결과에서 필요한 것 쓰기->접속해제->끝!

작성하시 쿼리문은 SQLQuery1->SQL->Text에 넣으심 됩니다.

반대로 DB에 값을 쓰려면

        ADOQueryConfig->Edit();
        ADOQueryConfig->FieldByName("indate")->AsString = "잠온다";
        ADOQueryConfig->Post();

이런식으로 하시면 됩니다.
물론 이 부분은 결과가 있을때 실행하셔야 하죠.

에디트상태로 전환->데이터 고치고->적용!



럽투유 님이 쓰신 글 :
: 황당하시더라래도 이런놈도 있구나 라고 가엽게 여겨주세요...^^
:
: 텍스트박스( name 값 = textbox) 와 버튼 (Button1) 이 있어서
:
: 이 버튼을 눌렀을때 텍스트박스에 입력한 값을 쿼리문에 대입시켜야 하는건데요.
:
: 님께서 샘플로 주신 소스가 완전히 이해가 가질 않아 다시 질문 드립니다.
: (물론 기초부터 하고 싶지만 시일이 급하다보니..이해해 주십시요)
:
: void __fastcall TForm2::Button1Click(TObject *Sender)
: {
:
:    ADOQuery1->FieldByName("indate")->AsString;
:
: }
:
: 위처럼 버튼을 클릭하면 시행을 하는걸로 하고 싶은데요..
: 님의 소스는 먼가 다른 포스가 느껴져서요...ㅡㅡ;
:
: 어디에 넣고 쓰는건지.....ㅎㅎ...죄송
:
: 그리고 ADOQuery1 의 SQL에
:
: Select * from output_data where id > 0 and indate ='"+ textbox +"'
:
: 라고 입력해 놓았는데 맞는건가요??
:
: 아...갑갑해요....

+ -

관련 글 리스트
47902 ADOQuery 에 파라미터값 넣기 럽투유 1449 2007/01/26
47903     ADOQuery의 SQL->Text속성에 쿼리문을 작성하세요~ 조대현.Clau 2556 2007/01/26
47905         다시 질문 드려요 ^^ 럽투유 1233 2007/01/26
47906             쿼리문 작성 맞습니다~ 버튼클릭 이벤트에 다 넣으심 될듯하네요~ 조대현.Clau 1960 2007/01/26
47908                 Re:쿼리문 작성 맞습니다~ 버튼클릭 이벤트에 다 넣으심 될듯하네요~ 럽투유 1228 2007/01/26
47909                     return;으로 하시거나 지워버리세요. 조대현.Clau 1176 2007/01/26
47910                         염치없지만 몇가지 더 물어볼께요 럽투유 1334 2007/01/26
47911                             필드이름 대신 Fields->Fields[0]->AsString; 이런식으로 번호로도 가져올 수 있습니다. 조대현.Clau 2340 2007/01/26
47912                                 Missing SQL property 럽투유 2612 2007/01/26
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.