如何在IntraWeb中的TSmartQuery中添加参数?

发布于 2024-09-30 20:15:54 字数 137 浏览 8 评论 0原文

如何在TSmartQuery中添加参数? 我的意思是在“参数”选项卡上,当我单击“参数属性”时可以看到该选项卡。

我找到了两种方法: -编辑dfm文件 -参数根据 Sql 选项卡中使用的 :vars 自动填写。 我无法使用用户界面手动添加它们。

How to add parameters in TSmartQuery?
I mean on the Parameter tab which can be seen when I click on params properties.

I found two ways:
-editing the dfm file
-parameters are filled out automatically based on used :vars in Sql tab.
I did not managed to add them manually using a user interface.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

小梨窩很甜 2024-10-07 20:15:55

TSmartQuery 是 ODAC 库的组件。

TSmartQuery 与其他 TQuery 系列类似,您可以根据需要以不同的方式使用参数:

  1. 如果您已经使用带有参数的 Sql,例如:Qry1.Sql.Text := 'Select * from Table where Id = :id';
    那么您可以将定义的参数值设置为: Qry1.ParamByName('Id').asInteger := 10;

  2. 如果您有来自 TParam 的实例,您可以将其添加到 qry 中,如下所示: Qry1.Params.AddParam(myParam)。

  3. < p>您可以使用以下命令创建参数并直接分配给 ParamList:Qry1.Params.CreateParam();

定义为:

function CreateParam(FldType: TFieldType; const ParamName: _string;
  ParamType: TParamType): TDAParam;

2 & 3 主要与存储过程一起使用,因为您需要定义参数是输入参数还是输出参数。

更新
当我发布我的答案时,我没有注意到您正在使用 Intraweb,但它应该与您使用普通 Delphi 应用程序的方式相同。

TSmartQuery is component from ODAC library.

TSmartQuery is similar to other TQuery family you can use parameters in different ways depend on your needs:

  1. If you already used Sql with parameters such as: Qry1.Sql.Text := 'Select * from Table where Id = :id';
    then you can the defined parameter values as : Qry1.ParamByName('Id').asInteger := 10;

  2. If you have an instance from TParam you can add to the qry like : Qry1.Params.AddParam(myParam).

  3. You can create Parameter and assigned directly to the ParamList with : Qry1.Params.CreateParam();

which defined as:

function CreateParam(FldType: TFieldType; const ParamName: _string;
  ParamType: TParamType): TDAParam;

2 & 3 mostly used with Stored Procedures because you need to define if the parameter will be input or output param.

Update:
I didn't notice that you are using Intraweb when I post my answer, but it should be the same way as you do with normal Delphi applications.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文