300分够不够(100分)

  • 主题发起人 主题发起人 xujiang
  • 开始时间 开始时间
X

xujiang

Unregistered / Unconfirmed
GUEST, unregistred user!
各位请帮帮忙,我现在有数据库结构如下:
表 项目名称:
项目编号 单价
1 10.12
2 15.45
3 456.12
… …
表 项目明细:
项目编号 材料编号 材料单位用量
1 1001 1.11
1 1560 45.23
2 4864 67.564
2 1230 456.12
3 8769 432.12
3 4565 1.00
… … …
表 材料:
材料编号 材料名称 材料单价
1001 水 1.00
1560 木材 1120.00
1230 砂 45.00
8769 石 45.50
… … …
现在需要在表my项目(项目编号 单价 用量 合价)中
输入my项目.编号后得到 my项目.单价
并在表my材料(项目编号 材料编号 材料单位用量 材料名称 材料单价 用量
合价)中插入数据
得到my材料.项目编号 材料编号 材料单位用量 材料名称 材料单价 ….

输入my项目.用量后得到 my项目.合价 my材料.用量 my材料.合价

其中my材料.用量=my项目.用量*my材料.材料单位用量
my项目.项目编号与my材料.项目编号是一对多关系
要求用GRID或更好的,数据库为ACCESS用ADO联,最好做成完整的程序发给我,刚起
步有许多问题不清楚。

300分不够还可以增加,麻烦各位了
cdxujiang@163.net
 
不好意思分数输错了
其余200分一定要给
 
请问:my项目与 项目名称 表中有相同的两个字段。Why?岂不冗余?

>>输入my项目.编号后得到 my项目.单价
是编辑框输入条件后查询吗?你第一个表就可以做到:
select 项目.单价 from 项目名称 where 项目编号 = 你的条件

>>并在表my材料(项目编号 材料编号 材料单位用量 材料名称 材料单价 用量
合价)中插入数据
只是插入数据可:
Insert Into my材料( 项目编号,材料编号,材料单位用量,材料名称,材料单价,用量合价)
Vaules( :项目编号,:材料编号,:材料单位用量,:材料名称,:材料单价,:用量合价)
可用parambyname依次传入实际数值.

>>输入my项目.用量后得到 my项目.合价 my材料.用量 my材料.合价
需要多表关联查询:
Select my项目.合价,my材料.用量 ,材料.材料单价*项目明细.材料单位用量 my材料.合价
from my项目 ,my材料 , 项目明细,材料
Where my项目.项目编号=my材料.项目编号
and my材料.材料编号=材料.材料编号
and 项目明细.项目编号=my项目.项目编号
and 项目明细.材料编号=材料.材料编号
and my项目.用量= 你的条件
用到四个表 ,'材料.材料单价*项目明细.材料单位用量' 别名为 'my材料.合价'
仓促之中,可能有不妥,姑且试一试.


 
用view吧!
 
to:hhzh426
view是什么?请说详细些。
to:孟雯
my项目 及 my材料 是输入数据后需要更新的表,我上面没有说清楚
对于SQL我知道,但在GRID或更好的控件中怎样具体实现我不清楚,所以望各位给个程序列子。
对于用事件还是用触发器谁好我不清楚
触发器我没有用过,望各位给个程序列子。

cdxujiang@163.net

 
view就是视图。
 
谁能给个视图的例子,有数据的查询,修改。。。
 
access 里保存的查询(包括修改,追加,删除)就是视图,
它没有触发器.
1)"并在表my材料(项目编号 材料编号 材料单位用量 材料名称 材料单价 用量
合价)中插入数据?"
似乎不可能,既然查询里含有计算子段,就不能更新了,你怎么知道插入记录中的合价是多少?
必须先输入项目明细数据,才能算出合价,用量之类的.要分别做.
2)输入my项目.用量后得到 my项目.合价 my材料.用量 my材料.合价??
可以直接输入到my项目表里,用table:

Select 项目明细.项目编号,sum(材料.材料单价*项目明细.材料单位用量) as 合价
from 材料,项目明细
Where 项目明细.材料编号=材料.材料编号
group by 项目明细.项目编号

得到各项目的合价,如果要获得单个项目,where里加 项目编号=您的输入值

Select 材料.名称,sum(材料.用量) as 用量,sum(材料.材料单价*项目明细.材料单位用量) as 材料合价
from 材料,项目明细
where and 项目明细.材料编号=材料.材料编号
group by 项目明细.材料编号

得到各材料的用量和合价.

按我理解的,的需要似乎不是一条sql解决的,您可以在把上面的两个查询放在access库里.
以后就可以象表一样的使用,但,不可更改.而且您的更改只涉及用量,可以单独用一个table做.
 
程序应该可以是这样的:
输入数据后从表中查询得到结果,输入数据后得到结果,我见有些程序用的是 StringGrid,
帮帮忙吧。
 
这也问?哎主题太多了,眼都看花了,用f1book作吧。
 
问题已经解决
 
多人接受答案了。
 
后退
顶部