Q&A

  • [Q] 여러 필드 중에서 수정된 것만 update하구 싶어요...
안녕하세요.



마스터화일 필드가 상당히 많습니다. 한 40개 정도 되는 것 같습니다.

자료를 수정후 수정버튼을 누르면 업데이트 되도록 하려고 하는데...

처음에는 전체 필드를 수정하는 걸로 작업을 했더니 시간도 많이 걸리고

원하는 대로 작업이 되지 않습니다.



그래서 생각하는 게 전체 필드중에서 수정된 필드만 업데이트할 수 있는가 입니다.



예를 들어서 이름, 주민등록번호, 주소, 본적, 전화번호, 우편번호, 생년월일.........



이런식으로 있는데 주소와 전화번호만 변경했다고 하면

전체 필드를 다 업데이트에 포함하지 않고

주소필드와 전화번호 필드만 업데이트 하려구요..



중요한 것은 수정된 필드만 업데이트 하고 싶고

수정되는 필드가 하나이상이라는 것입니다.



가능한가요? 가능하다면 어떻게 해야합니까?



아시는 분은 꼭 알려주시면 고맙겠습니다.

3  COMMENTS
  • Profile
    강인규 2000.03.24 20:19
    이게 답변인지 모르겠습니다.

    캐쉬드업데이트를 사용한 예제입니다.



    일단 테이블의 CachedUpdate속성을 True로 설정해주십시요.



    그리구 테이블을 마구 수정합니다. (헤헤헤~~)



    수정버튼에 아래와 같이 코딩합니다.



    Table1.ApplyUpdates;



    이렇게 하심 수정된 사항이 한꺼번에 반영됩니다.



    테이블 한개에 대해 한레코드를 다 수정하면 시간이 많이 걸린다? 잘 이해하기 힘드네요.



    이방법을 써보세요. 마구 수정하구 수정사항 한방에 바꿀 수 있습니다.



    하나더, 취소하고 싶으실 땐...



    Table1.CancelUpdates;



    하심 됩니다. 코딩이 길지 않으니 함 해보시죠.



    윤석태 wrote:

    > 안녕하세요.

    >

    > 마스터화일 필드가 상당히 많습니다. 한 40개 정도 되는 것 같습니다.

    > 자료를 수정후 수정버튼을 누르면 업데이트 되도록 하려고 하는데...

    > 처음에는 전체 필드를 수정하는 걸로 작업을 했더니 시간도 많이 걸리고

    > 원하는 대로 작업이 되지 않습니다.

    >

    > 그래서 생각하는 게 전체 필드중에서 수정된 필드만 업데이트할 수 있는가 입니다.

    >

    > 예를 들어서 이름, 주민등록번호, 주소, 본적, 전화번호, 우편번호, 생년월일.........

    >

    > 이런식으로 있는데 주소와 전화번호만 변경했다고 하면

    > 전체 필드를 다 업데이트에 포함하지 않고

    > 주소필드와 전화번호 필드만 업데이트 하려구요..

    >

    > 중요한 것은 수정된 필드만 업데이트 하고 싶고

    > 수정되는 필드가 하나이상이라는 것입니다.

    >

    > 가능한가요? 가능하다면 어떻게 해야합니까?

    >

    > 아시는 분은 꼭 알려주시면 고맙겠습니다.

  • Profile
    윤석태 2000.03.24 23:15
    인규님 답변 감사합니다.



    그런데 답변 내용을 참고해보니 제가 하려는 것과는 좀 틀린 것 같아서요.. 또 이렇게.. ^^



    제가 하고 싶었던 것은 불필요한(수정이 되지않은) 필드들은 업데이트하지 않고

    오직 수정된 필드들만 업데이트 하는 것인데....



    중요한 것은 수정되지 않은 필드들은 업데이트에서 제외시켜야 되거든요...



    참고로 저는 데이타셋으로 SQL 컴포넌트만 사용했고 table 컴포넌트는 사용하지 않았습니다.

    updateSQL은 사용했습니다.



    그럼~ 또 답변 기다리겠습니다. ~

    ********************************************************************************************************************



    강인규 wrote:

    > 이게 답변인지 모르겠습니다.

    > 캐쉬드업데이트를 사용한 예제입니다.

    >

    > 일단 테이블의 CachedUpdate속성을 True로 설정해주십시요.

    >

    > 그리구 테이블을 마구 수정합니다. (헤헤헤~~)

    >

    > 수정버튼에 아래와 같이 코딩합니다.

    >

    > Table1.ApplyUpdates;

    >

    > 이렇게 하심 수정된 사항이 한꺼번에 반영됩니다.

    >

    > 테이블 한개에 대해 한레코드를 다 수정하면 시간이 많이 걸린다? 잘 이해하기 힘드네요.

    >

    > 이방법을 써보세요. 마구 수정하구 수정사항 한방에 바꿀 수 있습니다.

    >

    > 하나더, 취소하고 싶으실 땐...

    >

    > Table1.CancelUpdates;

    >

    > 하심 됩니다. 코딩이 길지 않으니 함 해보시죠.

    >

    > 윤석태 wrote:

    > > 안녕하세요.

    > >

    > > 마스터화일 필드가 상당히 많습니다. 한 40개 정도 되는 것 같습니다.

    > > 자료를 수정후 수정버튼을 누르면 업데이트 되도록 하려고 하는데...

    > > 처음에는 전체 필드를 수정하는 걸로 작업을 했더니 시간도 많이 걸리고

    > > 원하는 대로 작업이 되지 않습니다.

    > >

    > > 그래서 생각하는 게 전체 필드중에서 수정된 필드만 업데이트할 수 있는가 입니다.

    > >

    > > 예를 들어서 이름, 주민등록번호, 주소, 본적, 전화번호, 우편번호, 생년월일.........

    > >

    > > 이런식으로 있는데 주소와 전화번호만 변경했다고 하면

    > > 전체 필드를 다 업데이트에 포함하지 않고

    > > 주소필드와 전화번호 필드만 업데이트 하려구요..

    > >

    > > 중요한 것은 수정된 필드만 업데이트 하고 싶고

    > > 수정되는 필드가 하나이상이라는 것입니다.

    > >

    > > 가능한가요? 가능하다면 어떻게 해야합니까?

    > >

    > > 아시는 분은 꼭 알려주시면 고맙겠습니다.

  • Profile
    까마귀 2000.03.26 02:26
    윤석태 wrote:

    > 인규님 답변 감사합니다.

    >

    > 그런데 답변 내용을 참고해보니 제가 하려는 것과는 좀 틀린 것 같아서요.. 또 이렇게.. ^^

    >

    > 제가 하고 싶었던 것은 불필요한(수정이 되지않은) 필드들은 업데이트하지 않고

    > 오직 수정된 필드들만 업데이트 하는 것인데....

    >

    > 중요한 것은 수정되지 않은 필드들은 업데이트에서 제외시켜야 되거든요...

    >

    > 참고로 저는 데이타셋으로 SQL 컴포넌트만 사용했고 table 컴포넌트는 사용하지 않았습니다.

    > updateSQL은 사용했습니다.

    >

    > 그럼~ 또 답변 기다리겠습니다. ~

    > ********************************************************************************************************************

    >

    > 강인규 wrote:

    > > 이게 답변인지 모르겠습니다.

    > > 캐쉬드업데이트를 사용한 예제입니다.

    > >

    > > 일단 테이블의 CachedUpdate속성을 True로 설정해주십시요.

    > >

    > > 그리구 테이블을 마구 수정합니다. (헤헤헤~~)

    > >

    > > 수정버튼에 아래와 같이 코딩합니다.

    > >

    > > Table1.ApplyUpdates;

    > >

    > > 이렇게 하심 수정된 사항이 한꺼번에 반영됩니다.

    > >

    > > 테이블 한개에 대해 한레코드를 다 수정하면 시간이 많이 걸린다? 잘 이해하기 힘드네요.

    > >

    > > 이방법을 써보세요. 마구 수정하구 수정사항 한방에 바꿀 수 있습니다.

    > >

    > > 하나더, 취소하고 싶으실 땐...

    > >

    > > Table1.CancelUpdates;

    > >

    > > 하심 됩니다. 코딩이 길지 않으니 함 해보시죠.

    > >

    > > 윤석태 wrote:

    > > > 안녕하세요.

    > > >

    > > > 마스터화일 필드가 상당히 많습니다. 한 40개 정도 되는 것 같습니다.

    > > > 자료를 수정후 수정버튼을 누르면 업데이트 되도록 하려고 하는데...

    > > > 처음에는 전체 필드를 수정하는 걸로 작업을 했더니 시간도 많이 걸리고

    > > > 원하는 대로 작업이 되지 않습니다.

    > > >

    > > > 그래서 생각하는 게 전체 필드중에서 수정된 필드만 업데이트할 수 있는가 입니다.

    > > >

    > > > 예를 들어서 이름, 주민등록번호, 주소, 본적, 전화번호, 우편번호, 생년월일.........

    > > >

    > > > 이런식으로 있는데 주소와 전화번호만 변경했다고 하면

    > > > 전체 필드를 다 업데이트에 포함하지 않고

    > > > 주소필드와 전화번호 필드만 업데이트 하려구요..

    > > >

    > > > 중요한 것은 수정된 필드만 업데이트 하고 싶고

    > > > 수정되는 필드가 하나이상이라는 것입니다.

    > > >

    > > > 가능한가요? 가능하다면 어떻게 해야합니까?

    > > >

    > > > 아시는 분은 꼭 알려주시면 고맙겠습니다.



    Query에 보면 속성에 UpdateMode 라고 있는데요.

    그걸 upWhereChanged로 바꾸면 됩니다.

    이게 바뀐것만 업하는것으로 알고 있습니다.







    위대한 단군혼이 살아있는 나라.... 대한민국

    • 김문신
    • 2000.03.25 00:58
    • 2 COMMENTS
    • /
    • 0 LIKES
    • 이재식
      2000.03.25 01:47
      이재식 Wrote : 안녕하세요? 델파이 관련 출력물 컴포넌트에는 여러가지 있습니다. 크리스탈, 퀵(번들...
    • 하얀까마귀
      2000.03.25 04:06
      안녕하세요 하얀까마귀 입니다... 전반적으로 전 이재식님의 말씀에 동감을 합니다.. 아직 퀵으로 해서 ...
    • 때밀이
    • 2000.03.25 00:53
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 지나가다
      2000.03.30 22:54
      때밀이 wrote: > 예를들어 unix에는 a.sh라는 script가 있고... > 델로 만든 application에서 이 a.sh를 ...
    • 돌맹이
    • 2000.03.25 00:28
    • 1 COMMENTS
    • /
    • 0 LIKES
    • HART
      2000.03.25 02:11
      오라클에서는 아래와 같은 방법으로 해결할 수 있습니다. 다른 디비도 비슷한 방법이 있는지는 잘못라요....
    • 류종택
      2000.03.25 03:58
      Action 이름 대신 화일이름을 지정, Action은 Default:= True로 되어 있어야함.. 그 뒤의 파라메터도 적용...
    • 델초보
    • 2000.03.24 23:41
    • 3 COMMENTS
    • /
    • 0 LIKES
    • 최용일
      2000.03.25 02:12
      다음과 같이 이름으로 검사해서 만일 있다면 Show메소드를 이용하여 그 폼을 띄우시면 됩니다. procedu...
    • 최미현
      2000.03.25 01:47
      우선 답변고맙습니다. 근데요..이미 생성되어 있는 폼이 아니라 버튼을 눌렀을때 생성까지 같이 하려면...
    • 최용일
      2000.03.25 03:37
      헐헐헐... 좀 상당히 이상한 걸 하시네요...... 자동생성을 안하셨고 단지 이름만안다.... 허허허... ...
    • hee
    • 2000.03.24 23:05
    • 3 COMMENTS
    • /
    • 0 LIKES
    • 이준해
      2000.03.25 04:10
      폼간에 데이터 교환방법중엔 이런것도 있습니다. 델파이가 Object pascal 기반이니깐, oop 적인 방법을 사...
    • 강인규
      2000.03.25 00:29
      요즘 폼간의 데이터교환이 유행이군요. 아래만 보셔도 알 수 있을텐데....(쩝~); 어느 학교에서 내준 레포...
    • 최용일
      2000.03.25 00:35
      다음과 같이 넣고싶은 값을 항상하던대로 넣어주시면 됩니다. 단지 앞에다 새로 생성된 폼에다 넣으라는것...
    • my
    • 2000.03.24 22:49
    • 3 COMMENTS
    • /
    • 0 LIKES
    • 윤석태
      2000.03.24 23:24
      안녕하세요.. 질문하신 내용을 잘 모르겠네요... 어떤부분이 문제가 되는지를 자세하게 알려주시면 다...
    • 느티나무
      2000.03.24 23:46
      느티나무 wrote: 어디가 문제인지요 한글이 깨져서 나타납니까? = 레지스트리의 NLS_LANG 를 바꾸시...
    • 미정
      2000.05.03 06:39
      느티나무 wrote: > 느티나무 wrote: > 어디가 문제인지요 > 한글이 깨져서 나타납니까? > = 레지스...
    • 최용일
      2000.03.24 22:32
      폼의 OnCloseQuery, OnClose, OnDestroy이벤트중의 하나에서 필요에 맞게하세요... OnCloseQuery에서 하신...
    • 하얀까마귀
      2000.03.24 22:07
      안녕하세요 하얀까마귀 입니다.. 뭐가를 실행한다구요??? 무얼 실행하신다는건지는 모르겠지만...... ...
    • 이수정
      2000.03.24 22:29
      감사합니다..
    • 김종호
    • 2000.03.24 21:12
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 류종택
      2000.03.25 03:05
      아래와 같이 해보세요.. From 류.. --------- Function GetHTTP(URL:String):String; Begin ...
    • 박성훈
    • 2000.03.24 21:09
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 백록화
      2000.03.24 22:07
      yo~ ^^*^~ 안녕하세요! mySql 은 공개가 아니고, 쉐워 로 알고 있는데.... 상업적으로 사용할려면 ...
    • 임형호
      2000.03.24 21:01
      델초 wrote: > 밑에 질문(10576)을 했었는데 다른 답변을 하셔셔 이렇게 다시 올립니다... > 답변해주신...
    • 최용일
      2000.03.24 20:34
      create(self)와 create(application)의 차이는 폼의 주인이 누구인가를 정하 는 것밖에 없습니다. Self를 ...
    • 델초...
      2000.03.24 21:00
      예를 만들어봤읍니다.....새로해봐도 역시 안돼요...제가 어딘가 잘못한거 같은데..... 폼1 소스(폼3을 호...
    • 최용일
      2000.03.24 21:21
      네 역시 안됩니다. 그렇게 하시면... Form3.CallForm이 TForm형인데 그안에 Edit1이란 컴포넌트가 있을...
    • 하얀까마귀
      2000.03.24 20:50
      안녕하세요 하얀까마귀 입니다.... 정말 오랜만에 답변 올리는것 같네요... 최용일님이 말씀하신 ...
    • 최용일
      2000.03.24 20:56
      헐헐헐... 하얀까마귀님도 저처럼 감기에 걸리셨나보군요... 요즘 감기에 걸려서 고생하시는 분이 부쩍 ...
    • 하얀까마귀
      2000.03.24 22:11
      그럼.. 최용일님두??? 후후.. 이번 독감 무척 독하네요..... 체력에는 자신이 있는데 이번 감기로 앓아 ...
    • 손정현
    • 2000.03.24 20:09
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 하얀까마귀
      2000.03.24 21:03
      안녕하세요 하얀까마귀 입니다... 그리드에서 지금 말씀하신건 안되구요... DBGrid는 DAtaSource연결 외...
    • 김철환
    • 2000.03.24 20:04
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 최용일
      2000.03.24 20:52
      이곳에 ( http://www.easycash.co.at/comppage.htm )가보시면 백업/리스토어 컴포넌트가 있습니다. 오픈소...
    • 윤석태
    • 2000.03.24 19:15
    • 3 COMMENTS
    • /
    • 0 LIKES
    • 강인규
      2000.03.24 20:19
      이게 답변인지 모르겠습니다. 캐쉬드업데이트를 사용한 예제입니다. 일단 테이블의 CachedUpdate속성을...
    • 윤석태
      2000.03.24 23:15
      인규님 답변 감사합니다. 그런데 답변 내용을 참고해보니 제가 하려는 것과는 좀 틀린 것 같아서요.. 또...
    • 까마귀
      2000.03.26 02:26
      윤석태 wrote: > 인규님 답변 감사합니다. > > 그런데 답변 내용을 참고해보니 제가 하려는 것과는 좀 ...
    • 델파이
    • 2000.03.24 16:33
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 황명하
      2000.03.24 17:41
      물론 있지요. 그러나 프로그램 logic상 권장할 만한건 아닙니다. basic 프로그램을 해보셨나요? "goto...