2tear 로만 하다가 멀티티어 공부를 하고 있습니다.
몇가지 질문
여쭙겠습니다.
//----------아래와 같이 클라이언트에서의 처리는CommandText 나 DataRequest는
select 만 가능한가요?
update나 insert는 직접 처리할 수 없는가요? 할수 있다면 어떻게 하죠?
procedure TForm2.Button2Click(Sender: TObject);
Var
TSQL :
String;
begin
TSQL := 'select * from
customer';
Query_ClientDataSet2.Active :=
False;
Query_ClientDataSet2.CommandText := TSQL;
//
Query_ClientDataSet2.DataRequest(TSQL);
Query_ClientDataSet2.Active :=
True;
end;
//-------delete 문을 TServerMethods1 을 통해서 하려니까 Error가
나네요? (Error : Token unknown char -1 delete)
Serverr
함수
function TServerMethods1.custom_Delete(Value: String):
String;
//Var
// td: TTransactionDesc;
begin
//
EmployeeConnection.StartTransaction(td);
try
SQLQuery1.Close;
SQLQuery1.SQL.add('delete from customer where
cust_no=:cust_no');
SQLQuery1.ParamByname('cust_no').asstring :=
Value;
SQLQuery1.ExecSQL;
except on
E: exception do
result := E.message;
end;
end;
client에서 보내기
procedure TForm2.Button3Click(Sender: TObject);
Var
client :
TServerMethods1Client;
begin
if not Client_SQLConnection1.Connected then
Client_SQLConnection1.Connected := true;
client :=
TServerMethods1Client.Create(Client_SQLConnection1.DBXConnection);
try
edit1.text
:= Client.custom_Delete('1005');
finally
freeandnil(client);
end;
end;
Token unknown char -1 delete 에러는 DataSnap 환경의 이슈보다는 InterBase 이슈입니다.
동일한 코드로 VCL 앱을 만들어 delete 구문처리가 정상적으로 처리되는지 디버깅해보시면 쉽게 해결하실 수 있습니다.