간단한 가계부 비슷한 플그램입니다.
원도2000프로
델파이5.0
ADO쿼리...
쿼리컨포넌트만 써서..
달력 컨포의 날짜 클릭시마다 셀렉트문 돌려 결과를 얻어내는 구조입니다.
황당한건..
개발한 컴퓨터나 옆의 분 컴퓨터에서는 실행화일이 잘 돌아가 집니다.
아무 에러없이~~~깨끗하게....
그런데 어떤 컴퓨터에서는....달력 클릭시에 에러가 뜨는군요..
(에러메시지는 Bof 또는 Eof 머라 머라...나오는데...애궁 까먹었다)
또한 셀렉트 문에 like '김%'....
이렇게 하면 김으로 시작하는 모든게 다 나오는거 맞잖아요..
그런데 이 문장도 개발한 컴에서는 잘 먹는데..
다른 컴에서는 안되네요..
김* 로 인식을 안하고 김% 자체를 하나의 문장으로 인식하는거 같습니다.
운영체젠 똑같이 윈2000프로구요..
ocx나 dll은 쓰지 않았습니다.
엑세스파일도 동적 생성 안하고 만들어진걸 이용하거든요...
혹시나 이런 증상의 원인을 아시는 분은 설명 부탁 드립니다.
문제가 되는 쿼리문입니다..
procedure TForm1.calDATEChangeV(onDATE:TDate);
var
temp:string;
begin
//showmessage(DBpathname);
ProgressBar1.Position:=50;
temp:=FormatDateTime('YYYY-MM-DD',onDATE); //날짜만 받아오기
with ADOQuery1 do
begin
Close;
ConnectionString:='Provider=Microsoft.Jet.OLEDB.4.0;Password="";User ID=Admin;Data Source='+DBpathname+'TrueM.mdb;Mode=Share Deny None;Extended Properties="";Jet OLEDB:System database="";Jet OLEDB:Registry Path="";Jet OLEDB:Database Password=ybs401;Jet OLEDB:Eng';
SQL.Clear;
SQL.Add('select ADate, AName, AHungname, AHungValue from MainTbl where aDate = :Qdate order by aName, aHungname');
Parameters.ParamByName('Qdate').Value := StrToDate(temp);
ProgressBar1.Position:=100;
Open;
end;
ProgressBar1.Position:=0;
end;
% 대신에 *를 사용하면 됩니다~~ 혹은 * 1개도 않될경우가 있더라구여
그럴땐 * 2개를 사용하면 해결됩니다~~