ACCESS数据库的多表关联操作(进销存问题)(150分)

  • 主题发起人 主题发起人 yan11
  • 开始时间 开始时间
Y

yan11

Unregistered / Unconfirmed
GUEST, unregistred user!
数据库中有4个表:
J 进货表;X 销售表;SP 商品表;CK 库存表;
每个表中都有商品编码,品名等字段,详细信息在SP表中。
1)想在进货或销售表中输入商品编码后,自动带出 SP 表中的品名等信息(自动写入相应
表的字段中),请问如何实现?
2)如何实现 CK 库存表的更新?(进货表中输入数据后库存增加,销售表中输入数据库存
减少)
望能详细写下过程,有代码更好,谢谢!!!!!!!!!!!
 
1、商品编码输入后可以用sql或locate查到具体的商品资料,依我看不要写入其他表的字段了,
如果要写的话不就违背数据定义范式关系了。
2、在进货时当然要增加,在退出时做写代码不就可以了。

  要代码的想法是不现实的。
  提示:用Access要注意在Ado下尽量不要用主从表, 而用视图实现。
 
同意楼上意见, 数据定义最好能严格一点(相关数据用关键字段联接)。
1. 用SQL语句通过编号就能找到对应的其它信息。
比如:select spname,spunit from sp where spNo='001'
如果你是通过DBGrid来输入的话可能需要建立临时表。
2.你可以写一个库存核算的过程。关闭窗口时调用或当作一个功能模块让用户自己执行.
 
1)如果在GRID中,如果第一列为SP.CODE,
取得GRID。COLUMNS[SELECTEDINDEX](商品代号)的植,
然后query.sql.add('SELECT SP.NAME,SP.规格。。。 FROM
SP WHERE SP.商品代号="+Grid的直+'"');
query.open;
2)同样可以在QUERY中将库存表查出来,将这些直相加你的库存;
最好分别使用{QUERY库存},QUERY商品,.....和 UPdatequery
 
谢谢!,我的数据库数据量特别大,有10万多个记录,怎样做能使它运行的速度快一些。
 
用SQL来实现即可,用ADO一个QUERY来连接两个表,通过SQL来回连接便可,如有困难可以来
找我。
 
谢谢!!!!!!!!!!!!!!!!!!!!!!
谢谢大家百忙之中来帮我,每人有份!!!!!!!!!!!!!!!!
 

Similar threads

S
回复
0
查看
3K
SUNSTONE的Delphi笔记
S
S
回复
0
查看
2K
SUNSTONE的Delphi笔记
S
S
回复
0
查看
1K
SUNSTONE的Delphi笔记
S
S
回复
0
查看
915
SUNSTONE的Delphi笔记
S
D
回复
0
查看
2K
DelphiTeacher的专栏
D
后退
顶部