Q&A

  • 데이터베이스 프로그램의 객체지향으로 만들려고 하는데요?
안녕하세요.

강의실의 강의 자료중에서

데이터베이스 프로그램과 객체지향 (1)   라파에루 님의 강의롤 보고

따라 해보는데요.

이상하게  오류가 나서요. 질문들입니다.

유닛파일로 엔진을 만들고
========================
type
   TDBEngine = class
   private
      Ta : TTable;
   public
      constructor Create;
      destructor Destroy; override;
      procedure Open(FileName: String);
      procedure AddRec;
      property Table: TTable read Ta;      <===  요것이 문제가 되는 것 같음
end;
var
   DBEngine : TDBEngine;
=======================================



데이타소스의 속성중 Dataset 을 통해  property 의 Table를 대입하면
오류창이 떠서 실행이 되지 않네요.
================================================
   DBEngine.Open(ExtractFilePath(Application.ExeName) + 'abc.db');

   DMdl.DataSource1.DataSet :=  DBEngine.Table;  <==  블레이크가 걸림.
=========================================

강의실 자료와 같이 타이핑을 했는데도 안되네요.
제가 뭔가 잘못을 했나요? ^^;

평안한 시간되세요.
1  COMMENTS
  • Profile
    김길현 2004.09.16 00:35
    안녕하세요.

    안되는 이유는 알아냈습니다.

    코딩문제가 아니라. DataSource1 컴포넌트를 DataModul 안에 넣고

      DataSet  속성에 대입하니 않되었습니다.

      이것 찾는다고 한참 처다 보고 있었습니다.

      그래서 폼에다가 DataSource1 컴포넌트를 놓아 두니 되었습니다.

       DBEngine.Open( ExtractFilePath( Application.ExeName ) + 'data.db' );

    //DMdl.DataSource1.DataSet := DBEngine.Table;  // 모듈안에 넣으면 안됨
       DataSource1.DataSet := DBEngine.Table; // 폼 안에서 실행이됨

    ==========================================
    [질문]
    그래서 질문 드립니다.
    왜 객체지향으로 한다고 해서 모듈안에 넣었는데
    대입에서 에러가 가는 것인지 가르쳐 주세요.

    평안한 시간되세요.
    =========================================