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
[64064] DBExpress로 SQLQuery와 DBGrid를 runtime 연결할 때 오류문제
강요찬(난나) [kyc3003] 1541 읽음    2011-04-04 08:41
DBExpress 로 SQLQuery 와 DBGrid 연결할 때... (MySQL 5.0.37 DB와 연결 시)

아래 함수처럼 폼에 모든 콤포넌트를 올려놓은 뒤 그 컴포넌트로 연결할 땐 오류 없이 연결됩니다.

void DBGridLink(TDBGrid *grid,TDataSource *DS,TDataSetProvider *DSP,TClientDataSet *CDS,TSQLQuery *Query,String sql)
{
  CDS->ProviderName = "DSP";
  DS->DataSet = CDS;
  DSP->DataSet = Query;
  grid->DataSource = DS;
  SelectSQL(sql,Query); // select 명령 실행
  CDS->Active=true;
}



아래처럼 runtime 으로 생성해서 연결하려하면 에러 메시지가 뜹니다.

( Error Msg : Missing data provider or data packet )

void DBGridLink2(TSQLConnection *conn,TDBGrid *grid,TSQLQuery *qry,String sql)
{
  conn=DBConnect(conn,1); // MySQL DB 연결
  if (!conn) return;

  qry->SQLConnection = conn;
  TDataSource *DS  = new TDataSource(0);
  TClientDataSet *CDS = new TClientDataSet(0);
  TDataSetProvider *DSP = new TDataSetProvider(0);

  CDS->ProviderName = "DSP";
  DSP->DataSet = qry;
  DS->DataSet = CDS;
  grid->DataSource = DS;
  SelectSQL(sql,qry); // select 명령 실행 - Select가 됨을 확인했습니다...
  CDS->Active=true;
}


어떻게 연결해야 오류 없이 연결이 되겠는지요?

고수님들 명쾌한 해결책 부탁드립니다... 꾸벅~

+ -

관련 글 리스트
64064 DBExpress로 SQLQuery와 DBGrid를 runtime 연결할 때 오류문제 강요찬(난나) 1541 2011/04/04
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.