Q&A

  • 파라독스DB 동적 생성시....ㅜㅜ
안녕하세요.



TableType := ttParadox;

with FieldDefs do

begin

Clear;

Add('SN', ftAutoInc, 0, False);

Add('HANG', ftString, 6, False);

Add('TITLE', ftString, 20, False);

Add('JUJE', ftString, 20, False);

Add('BUN1', ftString, 14, False);

Add('BUN2', ftString, 14, False);

Add('BNAME', ftString, 20, False);

Add('BOOKS', ftString, 20, False);

Add('GOD', ftString, 20, False);

Add('LLOCATE', ftString, 20, False);

Add('SSHORT', ftMemo, 50, False);

Add('FFILE', ftString, 100, False);

Add('BON', ftBlob, 100, False);

end;

with IndexDefs do

begin

Clear;

Add('Primarykey', 'SN', [ixPrimary, ixUnique]);

Add('TITLE', 'TITLE', []);

Add('BNAME', 'BNAME', []);

end;

CreateTable;



테이블을 위와 같이 생성을 했습니다.

근데 날짜형 필드를 하나 추가할려고

Add('DDATE', ftDate, 0, False);

라고 했더니 과감히 에러가 나더군요....ㅡ.ㅡ;

예제를 찾아볼려고 해도 나오지가 않고요...

음...아시는 분 부탁드립니다.

1  COMMENTS
  • Profile
    이재식 1999.10.19 23:07
    한 wrote:

    > 안녕하세요.

    >

    > TableType := ttParadox;

    > with FieldDefs do

    > begin

    > Clear;

    > Add('SN', ftAutoInc, 0, False);

    > Add('HANG', ftString, 6, False);

    > Add('TITLE', ftString, 20, False);

    > Add('JUJE', ftString, 20, False);

    > Add('BUN1', ftString, 14, False);

    > Add('BUN2', ftString, 14, False);

    > Add('BNAME', ftString, 20, False);

    > Add('BOOKS', ftString, 20, False);

    > Add('GOD', ftString, 20, False);

    > Add('LLOCATE', ftString, 20, False);

    > Add('SSHORT', ftMemo, 50, False);

    > Add('FFILE', ftString, 100, False);

    > Add('BON', ftBlob, 100, False);

    > end;

    > with IndexDefs do

    > begin

    > Clear;

    > Add('Primarykey', 'SN', [ixPrimary, ixUnique]);

    > Add('TITLE', 'TITLE', []);

    > Add('BNAME', 'BNAME', []);

    > end;

    > CreateTable;

    >

    > 테이블을 위와 같이 생성을 했습니다.

    > 근데 날짜형 필드를 하나 추가할려고

    > Add('DDATE', ftDate, 0, False);

    > 라고 했더니 과감히 에러가 나더군요....ㅡ.ㅡ;

    > 예제를 찾아볼려고 해도 나오지가 않고요...

    > 음...아시는 분 부탁드립니다.





    이재식 Wrote :

    안녕하십니까?



    동적으로 테이블을 생성하는 방법에는 여러가지가

    있습니다.

    물론 귀하께서도 매우 잘 하셨습니다.

    그런데요, 테이트 타입을 추가할때 에러가 난다면

    혹시 close를 안한 상태에서 그런것이 아닐까요?



    제가 여기 샘플이 있습니다.

    이대로 하시면 잘 될것입니다.

    참고사항인데요, 일전에 제가 인프라이즈사에

    이런것을 질문한적이 있습니다.

    답변인즉, ClientDataSet를 이용해서 테이블을 생성하는

    방법을 추천하더라구요.

    그래서, 저 역시 웬만하면 ClientDataSet를 이용해서

    테이블을 동적으로 생성하는것을 권하고 싶군요.

    저는 이렇게 그냥 샘플을 했습니다.

    버튼1을 클릭하면

    동적으로 테이블생성하고요, (아래처럼)

    with CDS1 do

    begin

    with FieldDefs do

    begin

    Clear;

    Add('SN', ftAutoInc, 0, False);

    Add('HANG', ftString, 6, False);

    Add('TITLE', ftString, 20, False);

    Add('JUJE', ftString, 20, False);

    Add('BUN1', ftString, 14, False);

    Add('BUN2', ftString, 14, False);

    Add('BNAME', ftString, 20, False);

    Add('BOOKS', ftString, 20, False);

    Add('GOD', ftString, 20, False);

    Add('LLOCATE', ftString, 20, False);

    Add('SSHORT', ftMemo, 50, False);

    Add('FFILE', ftString, 100, False);

    Add('BON', ftBlob, 100, False);

    end;



    with IndexDefs do

    begin

    Clear;

    Add('Primarykey', 'SN', [ixPrimary, ixUnique]);

    Add('TITLE', 'TITLE', []);

    Add('BNAME', 'BNAME', []);

    end;

    CreateDataSet ;

    Open ;

    end ;





    버튼2을 클릭하면

    테이트타입의 테이블을 다시 추가하죠.

    with CDS1 do

    begin

    close ;



    with FieldDefs do

    begin

    Add('DDate', ftDate, 0, False);

    CreateDataSet ;

    open ;

    end;