Q&A

  • DB수정시 cannot modify a read-only 에러가 납니다.
db에 자료를 select 해서 에디터박스에 모두 뿌렸구여
그자료중 특정 부분을 수정한후
Table1.Edit;
이걸루 수정할려구 했는데
update_query : cannot modify a read-only dataset 에러가 납니다
무었때문인지 도무지 알수가 없습니다
제가 db를 잘 몰라서... 답변좀 부탁 드립니다

소스...
procedure TupdateForm.Button3Click(Sender: TObject);
begin


   With dMod.update_Query do
begin
  open;
  Edit;

  FieldByName('c_cnum').Asstring := Edit1.Text;
  FieldByName('c_name').Asstring := Edit2.Text;
  FieldByName('c_add1').Asstring := Edit3.Text;
  FieldByName('c_add2').Asstring := Edit4.Text;
  FieldByName('c_tel').Asstring := Edit5.Text;
  FieldByName('c_hp').Asstring := Edit6.Text;
  FieldByName('c_spday').Asstring := Edit8.Text;
  FieldByName('c_bir').Asstring := Edit7.Text;
  FieldByName('c_birchk').AsInteger := ComboBox1.items.add(ComboBox1.text);
  FieldByName('c_carname').Asstring := Edit9.Text;
  FieldByName('c_carcolor').Asstring := Edit10.Text;
  FieldByName('c_carbir').Asstring := Edit11.Text;
  FieldByName('c_km').Asinteger := StrToInt(Edit12.Text);
  FieldByName('c_date').Asstring := Edit13.Text;
  FieldByName('c_post').Asstring := Edit15.Text;
  FieldByName('c_memo').Asstring := memo1.text;

  Post;
end;
4  COMMENTS
  • Profile
    델파이탐크루즈 2002.05.26 01:16
    Table  콤퍼넌트 쪽에 option에 보시면 Insert, Edit 쪽에 False로 되어있는지
    확인하시고...
    그리드 쪽에도 ReadOnly 쪽에 True로 되어있는지 확인해보세요..

    그러면 해결될듯 싶군요..

    그럼 즐코...


  • Profile
    정범 2002.05.26 18:09
    답변 감사 합니다
    그런데 Table 이나 그리드 안씁니다
    데이터 소스와 쿼리를 사용합니다
    그리고 데이터모듈 을 사용해서 그곳에 데이터소스와 쿼리를 올려
    사용합니다
    아직도 헤메고 있어여.. 미팁니다
    좀 도와 주세요
  • Profile
    머슴 2002.05.27 08:56

      쿼리 컴퍼넌트는 기본적으로 readonly입니다.

      따라서 쿼리의 컴퍼넌트에 가져온 테이타를 갱신,삭제,수정시에는

      델파이에서는 캐쉬드업테이트를 이용해서 저장,갱신,삭제를 합니다.,.

       (이컴퍼넌트가 제어를 해줌..)  

       컴퍼넌트중 UpdateSQL컴퍼넌트를 놓으시고요...

       쿼리컴퍼넌트의 프러퍼티중 updateObject를 UpdateSQL컴퍼넌트로

       지정하고 CashedUpdate를 true로 하시면
      
       저장이 될거거요...

        Post;
       applyupdates; <- 추가


       만약에 update_Query 에 SQL(update문으로) 문으로  했을 경우에는

      좀 이야기가 달라지거든요...

      Post; 아니라 execsql이고요....
  • Profile
    정범 2002.05.28 06:57
    감사합니당.. 너무나...........
    해결했어여
    음... 무지 고생고생 찾다가 보니
    update_Query 의 Properties중 RequestLive라는 항목이 있데요
    그곳을 True로 하니까 Edit로 수정이 가능하네요
    아무튼 답변 해주셔서 감사 합니당..^^

    • 정범
    • 2002.05.25 21:00
    • 4 COMMENTS
    • /
    • 0 LIKES
    • 델파이탐크루즈
      2002.05.26 01:16
      Table  콤퍼넌트 쪽에 option에 보시면 Insert, Edit 쪽에 False로 되어있는지 확인하시고... ...
    • 정범
      2002.05.26 18:09
      답변 감사 합니다 그런데 Table 이나 그리드 안씁니다 데이터 소스와 쿼리를 사용합니다 그리고 데...
    • 머슴
      2002.05.27 08:56
        쿼리 컴퍼넌트는 기본적으로 readonly입니다.   따라서 쿼리의 컴퍼넌트에 가...
    • 정범
      2002.05.28 06:57
      감사합니당.. 너무나........... 해결했어여 음... 무지 고생고생 찾다가 보니 update_Query 의 Pro...
    • 델파이탐크루즈
      2002.05.26 00:11
      Function FA_NMFTP(NMFTP :TNMFTP):boolean; begin   NMFTP.Host    := ;...
    • 윤도상
    • 2002.05.25 20:43
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 김도형
      2002.05.25 21:07
      퍼온겁니다.. 예전의 질답 게시판에서염~~~ 함 해보세염~ 1. 메모 초기화   Memo1....
    • 조근영
    • 2002.05.25 20:22
    • 2 COMMENTS
    • /
    • 0 LIKES
    • 최용일
      2002.05.25 21:24
      안녕하세요. 최용일입니다. Owner나 Tag속성을 이용하시면 될거같네요... A라는 폼을 동적으로 생성...
    • 조근영
      2002.05.27 19:18
      에겅.......  정말 고마워여........ 이젠 돌아갑니다요............ 며칠을 머리 벅벅 뜯...
    • 전원보
    • 2002.05.25 20:08
    • 2 COMMENTS
    • /
    • 0 LIKES
    • 김도형
      2002.05.25 21:10
      var   clbl : TComponent;   nI : integer; begin   For nI := 0 to 10...
    • 전원보
      2002.05.26 17:39
      .
    • 나그네
    • 2002.05.25 20:08
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 최용일
      2002.05.25 21:32
      안녕하세요. 최용일입니다. 1번, 2번은 폼대신에 TDataModule을 사용하시면 될거 같은데요... 보이지...
    • 김도형
    • 2002.05.25 19:23
    • 0 COMMENTS
    • /
    • 0 LIKES
    • 정용광
    • 2002.05.25 19:02
    • 3 COMMENTS
    • /
    • 0 LIKES
    • 김형수
      2002.05.25 19:25
      저두 여기서 자료를 얻어서 연습하고 있는데요. 도움이 됐으면 하네요. .. uses   Windo...
    • 김지엽
      2002.05.25 19:18
      excel 자체를 SQL문으로 처리하는 것은 불가능하다고 생각됩니다. 현재 SQL문이 지원되는 것은 자체 DB...
    • 정용광
      2002.05.25 19:26
      감사합니다.. 우선 프로그램하는 이쪽의 환경으로 하는 것이 아니라.. 저희 프로그램을 사용하는 사용...
    • 한석훈
    • 2002.05.25 19:01
    • 2 COMMENTS
    • /
    • 0 LIKES
    • 김지엽
      2002.05.25 19:06
      델파이 입장에서는 그 DB가 PASSWORD가 있는지 없는지 모르니까 그럽니다. TDATABASE 객체에 ID = "...
    • 한석훈
      2002.05.25 20:51
      님 말씀대로 이렇게 코딩을 했는데요. 그래도 계속 물어보내요. DatabaseLogin이벤트에서 처리를 하...
    • 박상윤
      2002.05.26 01:09
      Direct Input을 사용해보세여.. 마우스 및 사이드와인더 (Force feedbak 포함) 여러장치를 제어 할수 있...
    • 김지엽
      2002.05.25 19:10
      님이 짜신 소스를 보지 않은 상태에서 뭐가 뭐라고 이야기 하기는 힘들지만, 간단한 알람 프로그램 하나가 ...
    • GanJang
      2002.05.25 20:28
      답변 감사합니다. ^^ 근데, 기폰 폼 있잖아요? 델파이 시작하고 어플리케이션 시작하면 나타나는 폼. ...
    • 유영호
    • 2002.05.25 03:21
    • 6 COMMENTS
    • /
    • 0 LIKES
    • withcount
      2002.05.25 06:51
      select한 데이타만큼 update하는것이기 때문에 update용 query를 하나 더 사용하시기 바랍니다.. 그리고 ...
    • 안광호
      2002.05.25 03:59
      DataSet 이 Close 되어서 발생하는 에러입니다. 아래부분 *** 에서 Close 를 하고 있습니다.  ...
    • 유영호
      2002.05.25 04:07
      님 그럼 어떤 방법이 있을까여... 죄송하지만 한번 더 부탁드립니다.. 초보에게 희망과 용기를..... ...
    • 유영호
      2002.05.25 20:11
      .....
    • 김경록
      2002.05.25 19:01
      Var     lqry_Update: TQuery; Begin       query1...
    • 황선웅
      2002.05.25 19:00
      다른분이 먼저 답변을 주신것처럼 하나의 쿼리 컴포넌트로 Data를 fetch하고 for문을 실행중 Update를 하...
    • 박성환
    • 2002.05.25 02:28
    • 0 COMMENTS
    • /
    • 0 LIKES
    • 이호성
    • 2002.05.25 02:20
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 최용일
      2002.05.25 04:03
      안녕하세요. 최용일입니다. fData가 TDataRtn형인가요? 그럼 Data필드가 포인터형이니까, 포인터를 넘겨...
    • 최성원
    • 2002.05.25 01:59
    • 2 COMMENTS
    • /
    • 0 LIKES
    • 안광호
      2002.05.25 04:02
      C++ 에서 LPCSTR 로 사용하셨다는 것은 포인트를 말하는 것 같습니다. 델파이에서 이경우  선언...
    • 최용일
      2002.05.25 04:00
      안녕하세요. 최용일입니다. Calling Conversion확인해보세요. stdcall인가 cdecl인가... 그리고 파라...
    • 백록화
      2002.05.25 03:07
      yo` 안녕하세요 백록화 입니다. :) 손쉬운방법으로 load_file() 이라는 MySQL함수를 사용하는것입...
    • 최용일
      2002.05.25 03:52
      안녕하세요. 최용일입니다. 자료실에 보시면 메인메뉴 맘대로 꾸미기란 예제가 있을겁니다. 그거 참고하...
    • 유현성
    • 2002.05.25 01:16
    • 0 COMMENTS
    • /
    • 0 LIKES