Q&A

  • UpdateSQL 사용상 문제점
Updatesql을 사용할려고 합니다.

우선

Query를 이용하여 Datasource로 보낸후 DBGRID상으로 자료를

뿌렸습니다.

그리고 DBGRID상에서 자료를 수정후

UPdatesql을 통해 업테이트를 수행할려고 하니

'UPdate Fail'이란 메세지만 계속 나옵니다.



Query의 프로퍼티는

name := Q_code

cachedUpdate := True

Requestlive := False

Updateobject := us_code



UPdateSQL의 프로퍼티는

update edidta.h0602m

set

HMDESC = :HMDESC,

HMGUYK = :HMGUYK,

HMUNIT = :HMUNIT,

HMGSEQ = :HMGSEQ,

HMGNAM = :HMGNAM,

HMFLAG = :HMFLAG,

HMLDAT = :HMLDAT

where

HMCODE = :OLD_HMCODE



그리고 버튼을 누르면 실행이 이렇게 됩니다.

Q_code.CommitUpdates;





왜 자꾸 ERROR가 나는지요....



1  COMMENTS
  • Profile
    송기원 1999.05.20 04:20
    Tquery.CommitUpdate의 용도를 잘못 이해하고 계신듯 한데...

    아님 제가 잘못 알고 있거나...허허...



    Cached update기능을 사용을 하실려고 하는것 같은데...

    이렇게 해보심이... 어떨지...???



    database1.starttransaction;

    try

    query.applyupdates;

    database1.commit;

    except

    database1.rollback;

    raise;

    end;

    query.commitupdates;



    물론 이렇게 하기 위해서 기본적으로 Tquery의 cahced update기능이 true로

    되어 있어야 하며 TupdateSql(?)요놈과 Tquery가 연결이 되어 있어야 합니다.



    델파이의 cached update기능은 아주 매력적이지요...

    파워빌더의 데이타 윈도우라는 개념과도 매우 흡사한편이고요.....



    참고로 query.commitupdates는 applyupdates에 의하여 commit된 메모리상의

    caching된 data를 clear한다는 의미가 있습니다.



    자세한것은 델파이 메뉴얼을 참조하세요....

    --------------------------------------------------------

    요즘... 한국 델파이 개발자 홈페이지의 Q&A란에 친절하게 답변해 주시는 분이

    너무 적은것 같네요...

    물론 저도 아직 모르는것 투성이지만... 정보는 서로 공유하고 같이 더불어

    연구해나갈때에 더욱 값진것 아닙니까...??



    아울러,, 열심히 답변할동 하고 계시는 안치봉님과 김영대님의 노고에 감사

    드립니다........



    마성수 wrote:

    > Updatesql을 사용할려고 합니다.

    > 우선

    > Query를 이용하여 Datasource로 보낸후 DBGRID상으로 자료를

    > 뿌렸습니다.

    > 그리고 DBGRID상에서 자료를 수정후

    > UPdatesql을 통해 업테이트를 수행할려고 하니

    > 'UPdate Fail'이란 메세지만 계속 나옵니다.

    >

    > Query의 프로퍼티는

    > name := Q_code

    > cachedUpdate := True

    > Requestlive := False

    > Updateobject := us_code

    >

    > UPdateSQL의 프로퍼티는

    > update edidta.h0602m

    > set

    > HMDESC = :HMDESC,

    > HMGUYK = :HMGUYK,

    > HMUNIT = :HMUNIT,

    > HMGSEQ = :HMGSEQ,

    > HMGNAM = :HMGNAM,

    > HMFLAG = :HMFLAG,

    > HMLDAT = :HMLDAT

    > where

    > HMCODE = :OLD_HMCODE

    >

    > 그리고 버튼을 누르면 실행이 이렇게 됩니다.

    > Q_code.CommitUpdates;

    >

    >

    > 왜 자꾸 ERROR가 나는지요....

    >





    • 조영욱
    • 1999.05.20 17:45
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 이정욱
      1999.05.20 19:34
      dbiSaveChanges(Table1.Handle)을 하시면 Table1이 저장됩니다. 정의는 아래와 같이 되어있구요.. functi...
    • 김명희
    • 1999.05.20 08:23
    • 1 COMMENTS
    • /
    • 0 LIKES
    • powerman
      1999.05.21 10:04
      김명희 wrote: > 안여하세요. > 또 다시 같은 질문합니다. > 디테일 갯수 설정 어떻게합니까? > 예> A4...
    • 이재민
    • 1999.05.20 07:41
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 이정욱
      1999.05.20 08:20
      1. 같은방법으로 사용합니다. 단, 변수형은 각 언어에 맞게 고쳐주셔야 합니다. 2. Win32 API Bible이 있...
    • 김영대
      1999.05.20 20:23
      김희영 wrote: > 안녕하세요! > 델피언을 꿈꾸는 학생입니다... > > 질문의 내용은 다름이 아니오라 ...
    • 김영대
      1999.05.20 20:20
      김희영 wrote: > 안녕하세요! > 델피언을 꿈꾸는 학생입니다... > > 질문의 내용은 다름이 아니오라 ...
    • 안치봉
      1999.05.20 09:49
      김희영 wrote: > 안녕하세요! > 델피언을 꿈꾸는 학생입니다... > > 질문의 내용은 다름이 아니오라 ...
    • 한상훈
    • 1999.05.20 05:39
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 정주영
      1999.05.20 19:34
      한상훈 wrote: > 질문한가지 더 올리겠습니다. > report 작성시 각 field의 길이를 고정시키고 > 더 긴...
    • 안치봉
      1999.05.20 04:41
      초보운전 wrote: > > 실행파일을 만들어 설치할경우 그 디렉토리위치는 > 주인 마음대로 일경우가 많습...
    • 최석기
      1999.05.20 04:05
      초보운전 wrote: > > 실행파일을 만들어 설치할경우 그 디렉토리위치는 > 주인 마음대로 일경우가 많습...
    • 한고은
    • 1999.05.20 03:22
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 소병각
      1999.06.09 20:32
      한고은 께서 말씀하시기를... > CREATE PROCEDURE test2 @tbname char(20) AS > create table dbo.hgkim...
    • 이영일
    • 1999.05.20 02:58
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 김영대
      1999.05.20 20:32
      이영일 wrote: > Sun server에 있는 ISAM형식의 화일을 PC로 불러오고 싶습니다. > PC의 OS는 NT이구 >...
    • 박천문
    • 1999.05.20 01:30
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 이정욱
      1999.05.20 19:27
      안녕하세요? 초기화보다는...제가 DB는 잘 모르지만 그 필드의 MinValue와 MaxValue를 정의해 놓으면 될것...
    • 마성수
    • 1999.05.20 00:57
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 송기원
      1999.05.20 04:20
      Tquery.CommitUpdate의 용도를 잘못 이해하고 계신듯 한데... 아님 제가 잘못 알고 있거나...허허... C...
    • 남윤혁
    • 1999.05.20 00:31
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 유수
      1999.05.20 00:53
      안녕하세요. 물론 가능합니다. 아주 일반적으로 쓰고 있는 방식이기도 하구요. 특정셀을 선택하는 순간...
    • 안치봉
      1999.05.20 00:08
      김선경 wrote: > 2개의 프로그램에서 교신을 하기 위해 사용자 정의 메세지를 이용할려구 해요 > > a라...
    • 김선경
      1999.05.20 04:10
      호호.... 치봉님의 글 자~~알 읽었어요.... 한가지만 더 여쭤 봐도 실례가 아닌지... exe 프로그램( MD...
    • 안치봉
      1999.05.20 04:51
      김선경 wrote: > 호호.... 치봉님의 글 자~~알 읽었어요.... > 한가지만 더 여쭤 봐도 실례가 아닌지... ...
    • chbang
    • 1999.05.19 23:14
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 유수
      1999.05.20 00:33
      안녕하세요. 유수입니다. DBGrid는 기본적으로 다중 선택을 지원합니다. Ctrl 키를 누른 상태로, 마...
    • 박종길
    • 1999.05.19 22:06
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 안치봉
      1999.05.19 22:27
      박종길 wrote: > 델파이로 만든 프로그램에서 > 시스템에 설정되어 있는 드라이브에 대하여 > 지정된 화...
    • 이정욱
      1999.05.19 22:33
      한델(http://www.delphi.co.kr)의 강의실에 가보세요. 인쇄에 대한 강좌가 있습니다. 그것을 참고하세요. ...
    • 이현정
    • 1999.05.19 20:00
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 이정욱
      1999.05.19 22:32
      DB콘트롤을 사용하기보다 일반 TEdit을 사용하시면 간단히 해결되지 않을까요? TEdit을 사용하셔서 입력이...