델파이6에서도 그러길래 그냥 버그라고 무시했지만, 델파이 7에서도 이런 현상이 생겨서 질문 드립니다.
다른게 아니고, 쿼리를 하나 추가해서 active를 true로 하면 꼭 처음엔 에러메시지를 토해냅니다. 파리미터가 잘못 됐다는...
(예를 들면, 쿼리의 sql에다가
select g.goodsname, g.goodsuse, a.stockamount from goodsfinfo g, amountinfo a where g.goodscode=a.goodscode
이렇게 설정했을 때 말입니다.)
그렇지만, 프로젝트를 닫은 다음 다시 열어서 true로 바꾸면 에러없이 잘 되거든요...
이게 엑세스가 불안정해서 그런건지, 아님 델파이가 문제인지요?
혹시 이런 경우를 겪어본 분이 계시면 답변 좀 해주세요.
그리고, 한가지만 더 추가하겠습니다.^^;;
서버 공유폴더에다가 access 파일(mdb)를 심어놓고(?) 다른 클라이언트들 설정에는 그 서버를 네트웍 드라이버를 만들어놓고 제가 만든 프로그램을 실행시키면(mdb는 ADO를 사용해서 파일로 직접 연결되게했습니다.)
잘 되다가 가끔씩(사실은 아주 자주. ㅡ.ㅡ;; 미치겠습니다. 이 문제때문에. 그렇다고 엑세스 말구는 사용할 줄 아는게 없어서..) 쿼리를 찾을 수 없다는 에레메시지를 토해냅니다. 쿼리를 한 열개쯤 사용했는데, 하나가 에러나면 계속 에러가 나네요.
프로그램을 종료했다가 다시 실행시키면 또 언제 그랬냐는듯이 제대로 동작합니다. 그러다 또 에러나고...
(지금은 저 혼자 사용하기때문에 락 때문에 그런건 아니구요. )
이런 문제가 엑세스때문인지 답변 좀 해주세요. 테스트 삼아 혼자 실행해 보고 있는데 이런 문제가 발생하니, 나중에 동시에 여러 사용자가 사용했을때 얼마나 많은 에러가 생길지 걱정입니다.
물론, mdb를 사용했을 때....
읽어주셔서 감사합니다.
쿼리문 테스트가 대부분이지만, 님과 같은 에러메세지를 본
기억은 없는 것 같습니다.
혹시나 쿼리문장에 : 글자가 포함되었나 확인해 보시기 바랍니다.
아니면, TQuery의 프로퍼티 중 Params에 선언된 것이 있는지도 확인해
보시구요.
그리고, 님께서 올리신 쿼리문장이 소스에 있는 내용이라면
where g.goodscode = a.goodscode 와 같이
띄어쓰기를 하시기 바랍니다.
전 쿼리문을 사용할 때, SQL탐색기로 쿼리문을 실행한 뒤 문제가
없으면, 해당 문장을 복사해서 Add문으로 코딩 처리합니다.
그리고, TQuery 사용시에 Prepare를 먼저 한뒤 실행하구요.
제가 봤을땐 엑세스의 문제라기 보단, 작업중에 발생한 작은 문제가
지금의 현상을 일으키는 것이라 보입니다.
차분히 소스와 프로퍼티를 검사해 보시는 건 어떨지 모르겠습니다.
그럼.