Q&A

  • [긴급] TQuery에서 Insert할 수 있는 방법이 없나요?
보통 DB데이터를 입력(저장)할때 Table을 사용하는데 Query를 이용해서 자료를 입력 또는 수정을 할수 있는 방법이 없을까요?



예) query1.sql에 'select * from buseo'로 open되었구,

query1.append; 하니깐 에러가 나더라구요..



*오라클 8 버전에서 Table로 자료를 저장하니까 자꾸 RowID에러가 나더라구요.



그래서 우연히 어떤 소스를 보니깐 Query만으로 입력프로그램을 만들었던데..

분석이 넘 힘들더군요.



제발 알려주세요..



3  COMMENTS
  • Profile
    loke 2001.03.18 06:42
    query1.sql.clear;

    query1.sql.add('insert into dbname (filename1, fielename2..... fieldnamen');

    query1.sql.add('values (:para1, :para2, ..... :paran');

    query1.parambyname('para1').asstring := data1;

    query1.parambyname('para2').asstring := data2;

    .

    .

    .

    query1.parambyname('paran').asstring := datan;

    query1.execsql;







    프리맨 wrote:

    > 보통 DB데이터를 입력(저장)할때 Table을 사용하는데 Query를 이용해서 자료를 입력 또는 수정을 할수 있는 방법이 없을까요?

    >

    > 예) query1.sql에 'select * from buseo'로 open되었구,

    > query1.append; 하니깐 에러가 나더라구요..

    >

    > *오라클 8 버전에서 Table로 자료를 저장하니까 자꾸 RowID에러가 나더라구요.

    >

    > 그래서 우연히 어떤 소스를 보니깐 Query만으로 입력프로그램을 만들었던데..

    > 분석이 넘 힘들더군요.

    >

    > 제발 알려주세요..

    >

  • Profile
    프리맨 2001.03.19 02:25
    loke wrote:

    > query1.sql.clear;

    > query1.sql.add('insert into dbname (filename1, fielename2..... fieldnamen');

    > query1.sql.add('values (:para1, :para2, ..... :paran');

    > query1.parambyname('para1').asstring := data1;

    > query1.parambyname('para2').asstring := data2;

    > query1.parambyname('paran').asstring := datan;

    > query1.execsql;



    * Table과 DataSource를 이용해서는 DBGrid에서 직접 입력과 수정 삭제할 수 있습니다.

    그런데 Query와 DataSource를 이용해서는 DBGrid에 직접 입력 수정 삭제할수 없을까요?

  • Profile
    컴맹.. 2001.03.19 18:35
    안녕하세여... 컴맹입니다...



    그럴경우에는여..

    TQuery 의 property중 RequestLive속성을 True로 설정하시면

    하시구 싶은 작업을 하실수 있습니다..



    좋은 하루 되세여..

    그럼 이만...



    프리맨 wrote:

    > loke wrote:

    > > query1.sql.clear;

    > > query1.sql.add('insert into dbname (filename1, fielename2..... fieldnamen');

    > > query1.sql.add('values (:para1, :para2, ..... :paran');

    > > query1.parambyname('para1').asstring := data1;

    > > query1.parambyname('para2').asstring := data2;

    > > query1.parambyname('paran').asstring := datan;

    > > query1.execsql;

    >

    > * Table과 DataSource를 이용해서는 DBGrid에서 직접 입력과 수정 삭제할 수 있습니다.

    > 그런데 Query와 DataSource를 이용해서는 DBGrid에 직접 입력 수정 삭제할수 없을까요?