delphi 数据库如何在一个界面一个表格中显示出两个表中的数据~

两个表有外键关系。销售单(销售单号,日期,经手人,总价)-销售商品细表(商品编码,数量)。这两个表一起用来表示一次的销售信息~

用一个DBGRID来显示,然后用ADOSTOREDPROC来获取数据。
大致SQL语句你这样写应该可以(具体不清楚你的表结构,我猜想应该是用销售单号来关联的吧?)

@销售单号 VARCHAR(50) /*做为存储过程的输入参数*/
SELECT 商品编码,
数量,
(SELECT 日期 FROM 销售单 WHERE 销售单.销售单号 = @销售单号) AS 日期,
(SELECT 经手人 FROM 销售单 WHERE 销售单.销售单号 = @销售单号) AS 经手人,
(SELECT 总价 FROM 销售单 WHERE 销售单.销售单号 = @销售单号) AS 总价

FROM 销售商品细表 WHERE 销售商品细表.销售单号 = @销售单号
温馨提示:内容为网友见解,仅供参考
第1个回答  2010-10-26
我举个具体一点的例子,数据库以 Mysql 为例:
销售单数据表名:t_xsd
字段:销售单号——OrderNo(主键)
日期——InputDate
经手人——handler
总价——SumPrice

销售商品明细表名:t_xsddet
字段:ID(主键)
销售单号——OrderNo
商品编码——ProductNo
数量——Amount

SQL语句:
SELECT t_xsd.InputDate as InputDate,
t_xsd.Handler as Handler,
t_xsd.SumPrice as SumPrice,
t_xsddet.ProductNo as ProductNo,
t_xsddet.Amount as Amount
FROM t_xsd,t_xsddet
Where t_xsddet.OrderNo=t_xsd.OrderNo;

以上SQL查询出了两个表中的信息,已在Mysql5.1下测试通过。

delphi 数据库如何在一个界面一个表格中显示出两个表中的数据~
用一个DBGRID来显示,然后用ADOSTOREDPROC来获取数据。大致SQL语句你这样写应该可以(具体不清楚你的表结构,我猜想应该是用销售单号来关联的吧?)销售单号 VARCHAR(50) \/*做为存储过程的输入参数*\/ SELECT 商品编码,数量,(SELECT 日期 FROM 销售单 WHERE 销售单.销售单号 = @销售单号) AS 日...

delphi怎样用dbchart显示数据库中的一个表中的两列值
首先通过在 DBChart 中点击Add按钮添加 Series,然后双击Series,在弹出画面中设定Data Source选项,在Data Source下面的下拉框中选择DataSet,然后再设定下面相应的 DataSet名称,Lables、X以及Bars所对应显示的字段名,就好了,非常简单的。

delphi中用DBEDIT 同时显示表中的两条数据
每一个Dbedit只能显示一个字段.将它的数据集和相关的字段关联上就可以了.但是如果让它显示,必须要与它相关联的数据集是开着的.

delphi7中如何在另一个界面form2使用前一个登陆界面form1的账号啊,这...
form1 调用form2 with tform2.create()begin label1.caption=self.edit1.text try showmodual finally free end end

delphi 中 怎么用cxgrid 实现 类似excel的 选中多个框 下面会出来框内...
View,我们看到的诸如表格等可视的界面,都是View。并且当你拖放一个cxGrid到窗体上时,会自动创建一个View。因此要连接数据库,就不是对cxGrid进行操作,而是对View进行操作。你在设计期的cxGrid里应该能看到一个小方框,里面有个叫XXXXView的名字,点它,然后在属性设计器里找DataBinding,里面就可以...

在delphi中如何从一个表批量添加多条记录到另一个表,两个表的字段不完 ...
设置好各控件正确连接数据库。。在两个表结构和数据类型都想同的情况下。var sql:string;sql:='insert into Tab1 ';sql:='select * from Tab2'with adoquery1 do begin close;sql.clear;sql.add(sql);execsql;end;

DataGrid 一列显示显示数据库中的两列数据加起来
可以用select 列1+列2 as (列3) from 表 给你举个例子列 1 的字段名是id列2 是name你想要的列3是 id+name取个名字叫sum表名是ziliao那你就用 select id,name,id+name as sum from ziliao group by id,name应该就可以了

delphi数据库问题 Access数据库表复制另一个表的数据 (表数据复制)谢谢...
就按你说用ADO组件来进行复制 首先确定一个数据库还是两个,如果两个表在同一数据库中,这样只要一个数据库连接组件TADOConnection就行了,如果两个表是在不同的数据库中,那最好用两个TADOConnection连接组件。一个用于连接A数据库,另一个用连接B数据库。再放两个TADODataSet组件,我习惯使用ADODataSet...

Delphi 如何将满足不同查询条件的记录显示在一个表中
如果你已经用6个查询语句查询出来了的话,可以直接用union 把六个查询连接到一起,要注意的时,这六个查询的所查的字段名必须一样,如果不一样可以用 as 关键字,如:select f11 as a, f12 as b ,f13 as c from t1 union select f21 as a, f22 as b ,f23 as c from t2 union select...

DELPHI中,如何将前一个界面的表中的数据保存到后一张表中
用clientdataset,修改这个控件里的数据集,dbgrid绑定clientdataset中的数据,要更新数据库的时候clientdataset.applyupdate就行了

相似回答
大家正在搜