⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 using a data source to bind parameters.htm

📁 宇宙中最强悍的Delphi资料专辑宇宙中最强悍的Delphi资料专辑
💻 HTM
字号:
<html>

<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<meta name="GENERATOR" content="Microsoft FrontPage 3.0">
<title>Using a data source to bind parameters</title>
</head>

<body>

<table border="0" width="100%" style="font-size: 9pt">
  <tr>
    <td width="100%"><strong>从另一个数据表获得参数</strong><br>
    &nbsp;&nbsp;&nbsp; 
    如果参数的值既不是在设计期间指定,也不是在运行期间指定,就可以使用TQuery构件的DataSource属性用于指定一个数据源(TDataSource构件),在这个数据源中查找与参数名匹配的字段,然后用这个字段的值作为参数的值。<br>
    <br>
    &nbsp;&nbsp;&nbsp; 假设一个数据模块LinkModule,上面有一个TQuery构件叫OrdersQuery,它的SQL语句如下:<br>
    &nbsp;&nbsp;&nbsp; SELECT CustNo, OrderNo, SaleDate FROM Orders<br>
    &nbsp;&nbsp;&nbsp; WHERE CustNo = :CustNo<br>
    <br>
    &nbsp;&nbsp;&nbsp; 另外,数据模块上还有下列构件:<br>
    &nbsp;&nbsp;&nbsp; (1)一个TTable构件叫CustomersTable,它的TableName属性设为CUSTOMER.DB。<br>
    &nbsp;&nbsp;&nbsp; (2)一个TDataSource构件叫OrdersSource,它的DataSet属性设为OrdersQuery。<br>
    &nbsp;&nbsp;&nbsp; (3)一个TDataSource构件叫CustomersSource,它的DataSet属性设为CustomersTable。<br>
    &nbsp;&nbsp;&nbsp; (4)OrdersQuery的DataSource属性也设为CustomersSource。<big><br>
    &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <img src="../images/TopoGraph.jpg"
    width="256" height="160" alt="TopoGraph.bmp (122934 bytes)"></big> <br>
    &nbsp;&nbsp;&nbsp; (5)窗体上有两个TDBGrid构件,它们的DataSource属性分别指定CustomersSource和OrdersSource。如果编译和运行这个应用程序,将看到如图所示的效果:<br>
    <br>
    &nbsp;&nbsp;&nbsp; 因为运行的时候没有对SQL语句中的:CustNo参数赋值,OrdersQuery将试图从CustomersSource指定的数据集中查找匹配的字段。由于CustomersSource是从CUSTOMER.DB中获取数据的,而CUSTOMER.DB中恰好有一个CustNo字段,所以,:CustNo参数的值就是CustNo字段的值。如果您在显示CUSTOMER.DB的数据表中选择了另一条记录,将导致:CustNo参数的值跟着变化。也就是说,两个TDBGrid已经建立的主从关系。因此,每次在Customers数据表中选择一条记录,OrdersQuery的Select语句执行,从Orders数据表中返回CustNo等于当前Customer数据表的CustNo的所有记录。<hr
    size="1">
    <p align="center"><a href="mailto:ilovedelphi@163.net">RainBow</a><font color="#ffffff">。</font>策划制作 
    版权所有</td>
  </tr>
</table>

<p> </p>
</body>
</html>

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -