Q&A

  • 제발 보시고 답변좀 해주세요...흑흑
Query를 써서 테이블을 동적으로 생성하려고 합니다.

Foreign-Reference구문이 잘 되지 않네요.

어떻게 Query.SQL.Add('#?!?@?#??') 하죠???

DB유형은 파라독스입니다..

델초보라 간단히 답변해 주심 못 알아들어요..

예를 들어 좀 답변해 주심감솨...



예)

customer custnum name

order custnum cost



customer>>custnum과 order>>custnum 을 join할려 할때 Query구문.



//customer 테이블 생성

Query.SQL.Add(' CREATE TABLE "CUSTOMER.DB" ( custnum char(10), ');

Query.SQL.Add(' name char(10), primary key(custnum) ) ');

Query.ExecSQL;

//order 테이블 생성

???

이 부분이 궁금합니다. 그리고 테이블 유형은 어디서 정하죠?





별짓(?)을 다해도 안되는데 고수님들 좀 갈켜주세요 흑흑^^

4  COMMENTS
  • Profile
    마으미 2001.06.08 02:58
    with tblWork do begin

    DatabaseName := cSysTempDir;

    TableName := '파라독스바부.DB';

    Exclusive := True;



    with FieldDefs do begin

    Clear;

    Add('IPGO', ftString, 5, false);

    Add('DATE', ftString, 8, false);

    Add('AMTW', ftInteger, 0, false);

    end;



    with IndexDefs do begin

    Clear;

    Add('KEY_PRIM', 'IPGO;DATE', [ixPrimary]);

    Add('KEY_IPGO', 'IPGO;DATE', []);

    end;



    CreateTable;

    IndexName := 'KEY_IPGO';

    Open;

    end;



    위의 내용을 참고 하세요.







    델초보 wrote:

    > Query를 써서 테이블을 동적으로 생성하려고 합니다.

    > Foreign-Reference구문이 잘 되지 않네요.

    > 어떻게 Query.SQL.Add('#?!?@?#??') 하죠???

    > DB유형은 파라독스입니다..

    > 델초보라 간단히 답변해 주심 못 알아들어요..

    > 예를 들어 좀 답변해 주심감솨...

    >

    > 예)

    > customer custnum name

    > order custnum cost

    >

    > customer>>custnum과 order>>custnum 을 join할려 할때 Query구문.

    >

    > //customer 테이블 생성

    > Query.SQL.Add(' CREATE TABLE "CUSTOMER.DB" ( custnum char(10), ');

    > Query.SQL.Add(' name char(10), primary key(custnum) ) ');

    > Query.ExecSQL;

    > //order 테이블 생성

    > ???

    > 이 부분이 궁금합니다. 그리고 테이블 유형은 어디서 정하죠?

    >

    >

    > 별짓(?)을 다해도 안되는데 고수님들 좀 갈켜주세요 흑흑^^

  • Profile
    델초보 2001.06.08 03:44
    마으미 wrote:

    > with tblWork do begin

    > DatabaseName := cSysTempDir;

    > TableName := '파라독스바부.DB';

    > Exclusive := True;

    >

    > with FieldDefs do begin

    > Clear;

    > Add('IPGO', ftString, 5, false);

    > Add('DATE', ftString, 8, false);

    > Add('AMTW', ftInteger, 0, false);

    > end;

    >

    > with IndexDefs do begin

    > Clear;

    > Add('KEY_PRIM', 'IPGO;DATE', [ixPrimary]);

    > Add('KEY_IPGO', 'IPGO;DATE', []);

    > end;

    >

    > CreateTable;

    > IndexName := 'KEY_IPGO';

    > Open;

    > end;

    >

    > 위의 내용을 참고 하세요.

    >

    >

    >

    > 델초보 wrote:

    > > Query를 써서 테이블을 동적으로 생성하려고 합니다.

    > > Foreign-Reference구문이 잘 되지 않네요.

    > > 어떻게 Query.SQL.Add('#?!?@?#??') 하죠???

    > > DB유형은 파라독스입니다..

    > > 델초보라 간단히 답변해 주심 못 알아들어요..

    > > 예를 들어 좀 답변해 주심감솨...

    > >

    > > 예)

    > > customer custnum name

    > > order custnum cost

    > >

    > > customer>>custnum과 order>>custnum 을 join할려 할때 Query구문.

    > >

    > > //customer 테이블 생성

    > > Query.SQL.Add(' CREATE TABLE "CUSTOMER.DB" ( custnum char(10), ');

    > > Query.SQL.Add(' name char(10), primary key(custnum) ) ');

    > > Query.ExecSQL;

    > > //order 테이블 생성

    > > ???

    > > 이 부분이 궁금합니다. 그리고 테이블 유형은 어디서 정하죠?

    > >

    > >

    > > 별짓(?)을 다해도 안되는데 고수님들 좀 갈켜주세요 흑흑^^







    Foreign-Reference구문이

    Add('KEY_IPGO', 'IPGO;DATE', []);

    이 부분과 일맥상통?

    흑흑 아닌것 같은데....



    Database Desktop에서 테이블생성시 Referential Integrity 에서 정해주는 것을

    동적으로 생성시 Foreign-Reference구문으로 정해주는것이 아닌가요?

    님이 참고하라는것은 SQL구문이 아니고 델파이라이브러리를 쓰는것인데..

    제가 찾고자 하는답은 SQL구문을 Query에 어떻게 집어 넣느냐는 것입니다.

    물론 님이 제공해주신 예제와 같이 하는 방법이 있다면 더욱좋겠죠...



    흑흑...







  • Profile
    마으미 2001.06.08 18:51
    Add('KEY_IPGO', 'IPGO;DATE', []);



    이유 없이 같은 인덱스를 똑같이 잡았겠습니까.. ^^;

    어쩐 일인지 인덱스 하나만 잡으면 파라독스 작업이 잘 이루어 지지 않습니다.

    이 부분때문에 예전에 반나절을 고생한적이 있어요..

    저렇게 인덱스를 다시 잡아주고하면 이상없이 잘되고..

    저같은 경우는 어째뜬 이유가 있어서 저렇게 했었구요.. ^_______^;;

    쿼리로 파라독스 테이블 만드는건 안해 봐서 잘 모르겠습니다.

    죄송합니다.. 제가 엉뚱한 말만 늘어놨군요..









    델초보 wrote:

    > 마으미 wrote:

    > > with tblWork do begin

    > > DatabaseName := cSysTempDir;

    > > TableName := '파라독스바부.DB';

    > > Exclusive := True;

    > >

    > > with FieldDefs do begin

    > > Clear;

    > > Add('IPGO', ftString, 5, false);

    > > Add('DATE', ftString, 8, false);

    > > Add('AMTW', ftInteger, 0, false);

    > > end;

    > >

    > > with IndexDefs do begin

    > > Clear;

    > > Add('KEY_PRIM', 'IPGO;DATE', [ixPrimary]);

    > > Add('KEY_IPGO', 'IPGO;DATE', []);

    > > end;

    > >

    > > CreateTable;

    > > IndexName := 'KEY_IPGO';

    > > Open;

    > > end;

    > >

    > > 위의 내용을 참고 하세요.

    > >

    > >

    > >

    > > 델초보 wrote:

    > > > Query를 써서 테이블을 동적으로 생성하려고 합니다.

    > > > Foreign-Reference구문이 잘 되지 않네요.

    > > > 어떻게 Query.SQL.Add('#?!?@?#??') 하죠???

    > > > DB유형은 파라독스입니다..

    > > > 델초보라 간단히 답변해 주심 못 알아들어요..

    > > > 예를 들어 좀 답변해 주심감솨...

    > > >

    > > > 예)

    > > > customer custnum name

    > > > order custnum cost

    > > >

    > > > customer>>custnum과 order>>custnum 을 join할려 할때 Query구문.

    > > >

    > > > //customer 테이블 생성

    > > > Query.SQL.Add(' CREATE TABLE "CUSTOMER.DB" ( custnum char(10), ');

    > > > Query.SQL.Add(' name char(10), primary key(custnum) ) ');

    > > > Query.ExecSQL;

    > > > //order 테이블 생성

    > > > ???

    > > > 이 부분이 궁금합니다. 그리고 테이블 유형은 어디서 정하죠?

    > > >

    > > >

    > > > 별짓(?)을 다해도 안되는데 고수님들 좀 갈켜주세요 흑흑^^

    >

    >

    >

    > Foreign-Reference구문이

    > Add('KEY_IPGO', 'IPGO;DATE', []);

    > 이 부분과 일맥상통?

    > 흑흑 아닌것 같은데....

    >

    > Database Desktop에서 테이블생성시 Referential Integrity 에서 정해주는 것을

    > 동적으로 생성시 Foreign-Reference구문으로 정해주는것이 아닌가요?

    > 님이 참고하라는것은 SQL구문이 아니고 델파이라이브러리를 쓰는것인데..

    > 제가 찾고자 하는답은 SQL구문을 Query에 어떻게 집어 넣느냐는 것입니다.

    > 물론 님이 제공해주신 예제와 같이 하는 방법이 있다면 더욱좋겠죠...

    >

    > 흑흑...

    >

    >

    >

  • Profile
    델초보 2001.06.08 21:32
    답변은 감사합니다..하지만 뭔가 오해하신듯 싶네요..

    Foreign-Reference구문은 인덱스를 지정해주는 구문이 아닌데...



    customer(고객)의 custnum(고객번호) 와

    order(주문)의 custnum(주문고객번호)를 조인하여



    order테이블에서 주문을 받으면 customer테이블에서 그 고객번호를 참조하는

    것입니다...물론 costomer테이블에 없는것이 order테이블에 있을리는 없죠..

    마찬가지로 costomer에서 고객을 한명 지우면 그것에 속한 order테이블의 고객은

    전부 지워질 수 도 있는거죠...



    이런것을 뭐라고 하더라 Detail/Master관계형 테이블??

    제가 원하는 것은

    reference구문 입니다....

    오라클이나 MSSQL에서는 이 구문이 있는데 그것을 쓰면 query에서는 에러가

    나더군요...



    고수님들 다시 답변해 주세요...흑흑..