|
혹시 SQL Server 2000을 쓰고 계시면, 컴포넌트가 서버로 전송하는 쿼리를 자세히 분석할 수 있습니다. SQL Server의 Profiler를 사용하면 어떤 쿼리가 전송되어 얼마나 시간이 걸렸는지 아주 자세하게 보여줍니다.
김정규 님이 쓰신 글 :
: 일단, 쿼리문을 만들때 파라미터를 쓰면 좋을 것 같은데...
: 특히 문자열이 변수로 들어갈 때는 변수에 컴마나 쿼테이션 마크가 들어가서 SQL문이 깨질 수 있습니다. 이 때, 파라미터를 쓰면 컴포넌트가 알아서 처리해줍니다.
:
: ADOQuery1->SQL->Add("insert into info");
: ADOQuery1->SQL->Add("(ID, Pass, Passa, Target, Time)");
: ADOQuery1->SQL->Add("values ");
: ADOQuery1->SQL->Add("(:ID, :Pass, :Passa, :Target, :Time");
:
: ADOQuery1->Parameters->ParamValues["ID"] = ID;
: ADOQuery1->Parameters->ParamValues["Pass"] = Pass;
: ADOQuery1->Parameters->ParamValues["Passa"] = Passa;
: ADOQuery1->Parameters->ParamValues["Target"] = Target;
: ADOQuery1->Parameters->ParamValues["Time"] = Time;
:
: ADOQuery1->ExecSQL();
:
: 이런식으로 하면 문제를 찾기가 더 쉬울것 같습니다.
:
: 그리고 Parameter만 바꾸어서 다시 쿼리 할 때는,
: ...
: ADOQuery1->Parameters->ParamValues["Pass"] = newPass;
: ADOQuery1->Requery(TExecuteOptions());
: 처럼 하면 됩니다.
|