Q&A

  • Sql문장을 이용해서 어떻게 입력을 하죠..?
HANDYMST.DBF의 TP_GU와 DT_JUNSONG ... 은 character Type이고
CNT_COUNT만 Number Type입니다.
그런데 아래의 문장으로 입력하면 MisMatch 라도 나오네요..
왜 그러죠...?

   For i := 1 To XStrGrid1.RowCount Do
   Begin
      With Query1 Do
      Begin
         Close;
         Sql.Clear;
         Sql.Add( ' INSERT INTO HANDYMST (TP_GU, DT_JUNSONG, NO_JUNSONG, NO_SEQ, CD_MAEJANG,                ' );
         Sql.Add( '                       TP_JUNSONG, TP_RETURN, NO_STYLE, CD_COLOR, NO_SIZE,               ' );
         Sql.Add( '                       CNT_COUNT, DT_INPUT)                                              ' );
         Sql.Add( '               VALUES (:S_TP_GU, :S_DT_JUNSONG, :S_NO_JUNSONG, :S_NO_SEQ, :S_CD_MAEJANG, ' );
         Sql.Add( '                       :S_TP_JUNSONG, :S_TP_RETURN, :S_NO_STYLE, :S_CD_COLOR, :S_NO_SIZE,' );
         Sql.Add( '                       :S_CNT_COUNT, :S_DT_INPUT)                                        ' );
         ParamByName('S_TP_GU').AsString      := '1';
         ParamByName('S_DT_JUNSONG').AsString := '1';
         ParamByName('S_NO_JUNSONG').AsString := '1';
         ParamByName('S_NO_SEQ').AsString     := '1';
         ParamByName('S_CD_MAEJANG').AsString := '1';
         ParamByName('S_TP_JUNSONG').AsString := '1';
         ParamByName('S_TP_RETURN').AsString  := '1';
         ParamByName('S_NO_STYLE').AsString   := '1';
         ParamByName('S_CD_COLOR').AsString   := '1';
         ParamByName('S_NO_SIZE').AsString    := '1';
         ParamByName('S_CNT_COUNT').AsInteger := 1;
         ParamByName('S_DT_INPUT').AsString   := '1';
         ExecSql;
      End;
   End;

1  COMMENTS
  • Profile
    바보감자 2003.06.14 02:28
    안능하세요 언제나 초보 바보감자입니다.
    일단 쿼리 문같은 경우에는 대부분 쿼리를 확인 해보면 알수있는
    것들이 많습니다.
    자 질문 하신 코드중에
    SQL.Text  <-- 요놈을 넣어서
    ExecSql;  <-- 이곳에 중단점 두고
    디버깅 해보세요..
    마우스를 저곳에 가져다 대면. 나올껍니다. 쿼리문이 그럼 그걸
    복사해서 직접 쿼리 아날로져 같은곳에다가 때려보세요
    자세히 에러 뜰겁니다.. 아니면 쿼리가 잘못된게 보이던지.
    그럼 즐푸하세요..

    p.s
    저같은 경우에는 임시 스트링 변수 하나에 쿼리를 아이 집어넣고
    쿼리 자체를 함수화 시켜서씁니다.

    fuction ham(quesy_input : string) <- 함수인자.

    Sql.add (query_input);

    뭐.. 이런 식으로 쓴답니다.