我现有三张表 A ,B ,C 如何做到更新C的同时更新A,B表中的某些字段?

kkk444dsfsa 2009-05-31 03:25:47
A表结构 jyd_id jydbh jydzt
B表结构 hw_id jydbh hwzt
C表结构 fh_id fhqdbh jydbh hwzt
A表中的jydbh=B表中的jydbh=C表中的jydbh

我现在只知道C表中的fhqdbh 如何更新A,B表中的jydzt,和hwzt

A表对应B表是 一对多的关系 比如有这么几条数据:
A表 jyd_id jydbh jydzt
2 mfgb002 已审核
B表 hw_id jydbh hwzt hwmc
1 mfgb002 在库 A
2 mfgb002 在库 B
C表 fh_id fhqdbh jydbh jydzt hwzt
... .... mfgb002 已发车 已发车
C表中的数据是从A B表中得到的
我现在只知道fhqdbh 而且已经通过 set Rs = Conn.Execute("update fhqd set jydzt='已发车',hwzt='已发车' where fhqdbh='"&fhqdbh&"'" )
更改了c表中的jydzt 和hwzt 为已发车
现在能不能倒回来 更新A ,B表中的jydzt 和hwzt
...全文
69 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
shenzhenNBA 2009-05-31
  • 打赏
  • 举报
回复
可以,
如果是SQL SERVER数据库可以编写存储过程完成,或触发器完成更新;

如果是ACCESS可以结合ASP等程序完成更新;

两种情况关键的是处理好对应的条件关系
郭大侠_ 2009-05-31
  • 打赏
  • 举报
回复

conn.begintrans
set Rs = Conn.Execute("update fhqd set jydzt='已发车',hwzt='已发车' where fhqdbh='"&fhqdbh&"'" )
Conn.Execute("update A set ..." )
Conn.Execute("update B set ..." )
conn.committrans

同时执行3次命名就行了,但记住一定要用事务,否则可能造成数据不一致
调皮的蟠桃 2009-05-31
  • 打赏
  • 举报
回复
使用触发器可以更新A 和B!
kkk444dsfsa 2009-05-31
  • 打赏
  • 举报
回复
A总表
B详细表
如:A中有1条这样的记录
jyd_id jydbh jydzt zdz
1 mfgb001 待审核 北京
B表对应的记录
hw_id jydbh hwzt hwmc jianshu
1 mfgb001 在库 鞋子 100
2 mfgb001 在库 衣服 200

c表 发车清单表
fh_id fhqdbh jydbh jydzt hwzt
1 fh_001 mfgb001 已发车 已发车


我现在把B表中的200件衣服装入车中 发走 在c表中已更改jydzt 和hwzt 为已发车 现在
我要把B表中的hw_id=2的记录的hwzt 也更改为已发车 如何做呢?

ids = trim(request("ids")//IDS是从上页接收的hw_id

if request.form("btnsave") <>"" then
sql="insert into fhqd(fhqdbh,clbh,jydbh,hw_id,jydzt,hwzt,hwmc) select '"&fhqdbh&"','"&clbh&"',jydbh,hw_id,jydzt,hwzt,hwmc" from A,B where A.jydbh = B.jydbh and b.hw_id in(" &ids &") "
Set Rs = Conn.Execute(sql)
set Rs = Conn.Execute("update fhqd set jydzt='已发车',hwzt='已发车' where fhqdbh='"&fhqdbh&"'" )

28,391

社区成员

发帖
与我相关
我的任务
社区描述
ASP即Active Server Pages,是Microsoft公司开发的服务器端脚本环境。
社区管理员
  • ASP
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧