帮帮忙,翻译成DELPHI代码。谢谢(在线等着呢)

hoget 2002-11-28 05:37:51
int iRecords;
AnsiString SQL;
SQL=(WideString)Input;
ADOQuery1->Close();
ADOQuery1->SQL->Clear();
ADOQuery1->SQL->Add(SQL);
ADOQuery1->Open();
return DataSetProvider1->GetRecords(10,iRecords,grReset);
这是我用BCB时使用过的代码,我不知道用DELPHI怎么表达,请大家帮忙,谢谢。
...全文
47 11 打赏 收藏 转发到动态 举报
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
berl88 2002-12-03
  • 打赏
  • 举报
回复
入门者,没有这样的写法!
采用OBJ+DA输入OLEVARIANT
aiirii 2002-12-03
  • 打赏
  • 举报
回复
return 改成 result还差不多,我对DataSetProvider不熟!!
bit7 2002-12-03
  • 打赏
  • 举报
回复
好笑!DELPHI 也有 RETURN 吗?
godepth 2002-12-03
  • 打赏
  • 举报
回复
服务器端的代码也不必这样写啊
你可以在客户端:
var vData : Variant;
DCOMConnection.AppServer.GetData(vData);
ClientDataSet1.data := vData;

在服务器端:
Procedure GetData(Const sSQL : WideString;Var vData : OleVariant);
begin
with AdoQuery1,SQL do
begin
close;
text := sSQL;
Open;
vData := DataSetProvider1.GetRecords(10,iRecords,grReset);
end;
end;
godepth 2002-12-03
  • 打赏
  • 举报
回复
function getData : Variants;
var
iRecords:integer;
SQL:string;
//int iRecords;
//AnsiString SQL;
begin
SQL:=(WideString)Input;
ADOQuery1.Close();
ADOQuery1.SQL.Clear();
ADOQuery1.SQL.Add(SQL);
ADOQuery1.Open();
Result := DataSetProvider1.GetRecords(10,iRecords,grReset);
end;
DELPHI的帮助都有啦
快结贴了吧
tolimit 2002-12-03
  • 打赏
  • 举报
回复
tommy_linux(津工之鸟) 的就是正确的,

(WideString)Input采集的sql语句不影响,

用sql.add(sqlstr);执行就行了

var
iRecords:integer;
sql:string;
begin
sql:=//客户端来的语句;
with ADOQuery1 do
begin
Connection:=ADO;
sql.clear;
sql.add(sql);
open;//删除和修改等用Execsql;
end;
.....
end;

wangchinaking 2002-12-03
  • 打赏
  • 举报
回复
that's easy
hoget 2002-11-28
  • 打赏
  • 举报
回复
var
iRecords:integer;
SQL:string;
//int iRecords;
//AnsiString SQL;
begin
SQL:=(WideString)Input;
ADOQuery1.Close();
ADOQuery1.SQL.Clear();
ADOQuery1.SQL.Add(SQL);
ADOQuery1.Open();
return DataSetProvider1.GetRecords(10,iRecords,grReset);
end;
不行
hoget 2002-11-28
  • 打赏
  • 举报
回复
拜托了,请大家帮忙。我很急的。这是一个分布式开发应用服务器端的一段代码。
hoget 2002-11-28
  • 打赏
  • 举报
回复
SQL=(WideString)Input;//是接收客户端传来的SQL语句。
return DataSetProvider1->GetRecords(10,iRecords,grReset);//是将查询结果返回。那么我怎么实现啊。
tommy_linux 2002-11-28
  • 打赏
  • 举报
回复
var
iRecords:integer;
sql:string;
begin
sql:=Edit1.text;
with ADOQuery1 do
begin
Active:=False;
sql.clear;
sql.add(sql);
Active:=True;
end;
.....
end;

1,593

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 网络通信/分布式开发
社区管理员
  • 网络通信/分布式开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧