Q&A

  • ExecSQL; 에서 구문오류가 뜨는데...
With Query1, Query1.SQL Do begin

   :

   DataModule1.DataBase1.StartTransaction;

   Try
      Close; Clear;
      Add('INSERT INTO TEST (col1, col2, col3) VALUES (:a1, :a2, :a3)');
      ParamByName('a1').AsString := Edit1.Text;
      ParamByName('a2').AsString := Edit2.Text;
      ParamByName('a3').AsString := IntToStr(Temp);
      ExecSQL;
      DataModule1.DataBase1.Commit;
      Exit;
   Except
      ShowMessage('입력 실패 !');
      DataModule1.DataBase1.RollBack;
      Exit;
   end;

   :

계속해서 '입력 실패!'창만 뜨길래... ShowMessage()를 군데 군데 박아
추적을 해보니 ExecSQL에서 걸리더군요.

'General SQL [Microsoft][ODBC Microsoft Access Driver] INSERT INTO
문의 구문 오류입니다.' 라고 뜨더군요.

제가 생각할 적엔 Insert Query 잘못 작성한 것 같진 않은데...

참고로 운영체제는 XP,  DB는 Access DB를 사용하고 있습니다.

검색으로 글을 읽다보니 Local로 DB를 사용할 경우 DataBase 컴포넌트의
TransIsolation 속성을 tiDirtyRead 로 설정하라 해서 해봤지만... T_T

제가 뭘 잘못했는지요...
2  COMMENTS
  • Profile
    마코디 2004.02.16 23:06
    코딩상으로 문제가 없는데  ExecSQL 에서 오류가 발생한다는 의미
    데이터베이스에 쿼리를 수행하면서 무언인가가 틀렸다는 뜻입니다.
    델파이쪽에서의 문제가 아니라는 것이죠.

    코딩하면서 흔히 실수하는 경우로
    디비에 만든 필드 타입과 다른 데이터를 삽입하려 하는경우
    INSERT 쿼리가 오류가 발생합니다.
    아니면 필드가 없다던지..
    테이블 디자인을 확인해보시는게 좋을듯 하네요.


  • Profile
    김경록 2004.02.10 05:13
    Transaction 때문인것 같습니다.
    이것을 없애고 해 보시기 바랍니다..

    정확하게 하기 위해서.
    Query1.SQL.Text를 ShowMessage로 확인해 보시기 바랍니다.
    문장이 정확하다면,
    Transaction 때문일 것입니다..
    그럼..





    • 최용일
      2004.02.06 12:50
      안녕하세요. 최용일입니다. 쩝~ 편법이지만... 아래와 같이 해보세요... 쩝~~   PostMessa...
    • 최원식
      2004.02.06 17:44
      와....진짜 놀랐습니다... @.@ 폼 크리트시 최용일님이 가르쳐주신 것을 넣으니까 바로 되네요? 너무 감...
    • 최용일
      2004.02.07 07:48
      안녕하세요. 최용일입니다. 이곳 질답란의 답변들중에 보물들이 많이 있습니다... 열심히 읽어보세요......
    • 최용일
      2004.02.06 04:01
      안녕하세요. 최용일입니다. 델파이에서 도킹은 간단합니다. ActiveForm의 DockSite를 True로 해놓고 ...
    • 유우종
      2004.02.06 09:17
      답변 감사드립니다~ 꾸뻑~ 낼 회사가면 해봐야 겠네요..~ 고맙습니다..~ 저기 근데요... DAX Error 는 ...
    • 김성태
    • 2004.02.06 03:01
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 김경록
      2004.02.10 05:10
      ADODataSet을 사용하세여.. 그럼 해결됩니다..
    • 강국일
    • 2004.02.06 01:46
    • 2 COMMENTS
    • /
    • 0 LIKES
    • Galaxy
      2004.02.06 02:20
      help에 보시면 문자열은 안된고 되었있는데요 만약에 하신다면 이렇게하면 되지 않을까요 aaa:char; ...
    • 강국일
      2004.02.06 02:29
      정말 감사드립니다.
    • 박정순
    • 2004.02.06 00:39
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 최용일
      2004.02.06 04:07
      안녕하세요. 최용일입니다. 타이머로 해도 별 상관은 없겠네요... 타이머의 Interval을 1000(1초)정...
    • 김정모
    • 2004.02.05 23:52
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 연기훈
      2004.02.06 01:18
      sql 문을 확인해보세요. 이런 경우 프린트하는 sql문과 프리뷰 전 sql문이 틀려지는 거 같네요.. que...
    • 한성호
    • 2004.02.05 22:28
    • 0 COMMENTS
    • /
    • 0 LIKES
    • 박영민
      2004.02.05 22:19
      main form에서 font에서 charset을 HANGEUL_CHARSET로 놓고 해보세요
    • 이경남
      2004.02.05 22:29
      이런 요상한.. 문제에 부딪쳐서 황당했는데 덕분에 해결했습니다 감사합니다.
    • 소울해커
      2004.02.05 21:20
      폰트 문제로 알고 있습니다. 위치가 심하게 바뀌는 경우는 2000의 폰트가 꼬인 경우구요. 예전에 일본어 ...
    • 맑은물
    • 2004.02.05 20:47
    • 1 COMMENTS
    • /
    • 0 LIKES
    • Crazy
      2004.02.05 22:18
      안녕하세요. 일단 내용을 보니까 페이지당 한 레코드를 찍는거 같은데요.     RYO...
    • NiceSky
    • 2004.02.05 20:02
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 이추형
      2004.02.05 21:58
      회계강좌라... 업체의 규모별로 약간을 상이(있고 없고)하지만... 더존사이트나... 삼일회계법인 사이트...
    • 최상만
    • 2004.02.05 19:54
    • 2 COMMENTS
    • /
    • 0 LIKES
    • 최용일
      2004.02.06 03:47
      안녕하세요. 최용일입니다. PDF파일은 기본적으로 텍스트파일입니다. 이걸 파싱해서 이미지로 만드시면 ...
    • 최상만
      2004.02.06 17:48
      안녕하세요. 답변 감사합니다. 답변 내용을 보니 이해가 잘 가지 않네요. 아직 초자라서(^-^)... ...
    • 마코디
      2004.02.16 23:00
      무슨 DBMS를 사용하시는지요? 님 말씀을 들어보면 물리적인 상황으로는 문제가 없다는 얘기가 되죠. 그...
    • 쟝이
    • 2004.02.05 19:43
    • 0 COMMENTS
    • /
    • 0 LIKES
    • 최용일
      2004.02.06 04:09
      안녕하세요. 최용일입니다. 델파이의 Server컴포넌트들을 사용해보세요... 엑셀에 관련된 COM 인터페...
    • 손상엽
    • 2004.02.05 18:32
    • 5 COMMENTS
    • /
    • 0 LIKES
    • 인범진
      2004.02.06 18:58
      http://homepages.borland.com/efg2lab/Graphics/PolygonArea.htm 여길 한번 가보시죠... 아마도 원하시...
    • 홍성락
      2004.02.05 19:52
      hsr//////////////////////////////////////////////////////////// 아래것을 사용해보세요 VtxList는 ...
    • 손상엽
      2004.02.06 18:05
      감솨함돠... 근데.. PVtxList = ^VtxList을 사용하는 이유를 잘 모르겠어요... 실행이 잘 안되는데.. 아...
    • 홍성락
      2004.02.06 18:50
      interface uses .... type   TDPoint = packed record     X: double;...
    • 손상엽
      2004.02.07 19:02
      .
    • superman
    • 2004.02.05 06:43
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 최용일
      2004.02.06 03:55
      안녕하세요. 최용일입니다. HTML에서 Width와 Height를 0으로 해보세요... ^^ 항상 즐코하세요...
    • 김민우
    • 2004.02.05 06:40
    • 1 COMMENTS
    • /
    • 0 LIKES
    • 최용일
      2004.02.06 04:11
      안녕하세요. 최용일입니다. Indy를 사용해보세요. 델파이 6부터는 기본컴포넌트로 제공됩니다. TCP나...
    • 이민석
    • 2004.02.05 05:05
    • 2 COMMENTS
    • /
    • 0 LIKES
    • 한원희
      2004.02.05 20:04
      안녕하세요. 한원희입니다. 네.. 쓰레드 자체만으로는 별개인 것처럼 동작합니다. (프로세스 내의 자원...
    • 이민석
      2004.02.06 21:05
      ㅁㅁㅁ
    • 김도성
    • 2004.02.05 04:58
    • 0 COMMENTS
    • /
    • 0 LIKES
    • 보리문디
    • 2004.02.05 03:18
    • 2 COMMENTS
    • /
    • 2 LIKES
    • 마코디
      2004.02.16 23:06
      코딩상으로 문제가 없는데  ExecSQL 에서 오류가 발생한다는 의미 데이터베이스에 쿼리를 수행...
    • 김경록
      2004.02.10 05:13
      Transaction 때문인것 같습니다. 이것을 없애고 해 보시기 바랍니다.. 정확하게 하기 위해서. Query1....