我不明白如何使用参数,找到使用参数的正确例子有点困难。我确实设法使用clientdataset过滤器来完成这项工作,但我确信它也可以用sql完成。 datasnap不允许这样的查询,我读过我的研究,我必须使用参数。我只是不明白。我需要一个正确的示例,其中使用datasnap设置服务器/客户端,并且可以从客户端查询类似于sql:SELECT * FROM tbl_person WHERE person = 20
这将给我在dbgrid中所有20岁的人。就像我说我已经设法用过滤器做了这个,但过滤器不是100%正确的一两个奇数记录使它出现。
非常感谢您的协助
答案 0 :(得分:2)
使用ClientDataset和参数的方法有很多种。试试这个。
服务器端:
在ServerClass上放置一个TSqlQuery并以其形式输入Sql语句:
SELECT * FROM tbl_person WHERE person = :person
将参数属性设置为correcto参数类型和数据类型。
放置一个TDatasetProvider并连接到TSQLQuery
客户端:
现在您可以为此参数指定任何值,让Datasnap框架完成剩下的工作。
检查这些来源以获取更多信息:
答案 1 :(得分:0)
设置SQL命令:
qry.SQL.Text := 'SELECT * FROM tbl_person WHERE age = :age';
将参数类型定义为Integer
设置参数值:
qry.ParamByName('age').AsInteger := 20;
打开查询:
qry.Open;