设为首页收藏本站Access中国

Office中国论坛/Access中国论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

12下一页
返回列表 发新帖
查看: 3737|回复: 12
打印 上一主题 下一主题

[求助]存储过程编写求助!

[复制链接]
跳转到指定楼层
1#
发表于 2006-6-28 06:12:00 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

要求:

表2中“标志”里的内容=0就更新表1中具有与表2有相名称的项里的“数量”使表1中的“数量”= 表2中的“收入数量”-  表2中的“发出数量”,同时使表2中的“标志”变为“1”

在存储过程里是不是只能更新一个表的内容啊,不能象MDB里的更新查询那样同时更新2个表的内容?

我要做到我说的那样的效果该怎么做啊?

有哪位大哥帮我写出来我参考下吗?

在此先谢谢了!
[em04]

[此贴子已经被作者于2006-6-29 13:26:57编辑过]

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享分享 分享淘帖 订阅订阅
2#
发表于 2006-6-29 16:21:00 | 只看该作者
你先贴出来看看
3#
 楼主| 发表于 2006-6-29 20:03:00 | 只看该作者
CREATE PROCEDURE Input1

as

update 表1

SET

表1.数量=表2.收入数量-表2.发出数量

from 表1 INNER JOIN 表2 ON (表1.名称=表2.名称)

WHERE (((表2.标志)='0'))





写的这个存储过程只能更新表1啊,怎么才能够同时更新表2中的标志,使其变为“1”[em06]

[此贴子已经被作者于2006-6-29 12:03:22编辑过]

4#
发表于 2006-6-30 01:34:00 | 只看该作者
再接着写update
5#
 楼主| 发表于 2006-6-30 02:43:00 | 只看该作者
是接着update 表2吗?

这能实现同步更新?

我要的是表2中被用来更新了表1中的数据的项的“标志”才变为“1”啊

不是要所有的表2中的标志都变为“1”

接着写update 表2 能实现吗?[em04]
6#
发表于 2006-6-30 03:46:00 | 只看该作者
如果是实施了参照完整性的一对多关系,把表2的标志都改为1。
7#
 楼主| 发表于 2006-6-30 21:37:00 | 只看该作者
以下是引用tz-chf在2006-6-29 19:46:00的发言:


如果是实施了参照完整性的一对多关系,把表2的标志都改为1。



不懂,能说详细点吗?谢谢!

另外我在表2中的名称如果在表1中有的话就update,没有就在表1中insert。该怎么做?
8#
发表于 2006-7-1 03:49:00 | 只看该作者
从你的条件看,难道不是所有的表2中的标志为“0”的都更新为1?还有别的条件吗?
9#
发表于 2006-7-1 03:54:00 | 只看该作者
这样的表结构不好
10#
 楼主| 发表于 2006-7-3 04:57:00 | 只看该作者
以下是引用wuaza在2006-6-30 19:49:00的发言:


从你的条件看,难道不是所有的表2中的标志为“0”的都更新为1?还有别的条件吗?



是的,只是我在开始为了简单没在最先说明。事实上还有另外一个条件的。表2中标志为“0”的都会更新为“1”。但不是都更新到表1中。表2中会另外有个条件的,我没列出来。

其实我是在做一个库存系统的出入库统计。但公司的零件仓分成了3类。所以,表2做为入库表时,要更新到库存时就要把表里数据分别更新到3个零件仓的表中。

我想了下,如果实在不行我就只有在做入库表时就先把入库表按3类零件仓预先分成3个表再更新了。

但我前面说的要是表1中有表2中的名称就更新表1,没有就插入到表1该如何做啊?请指点下啊,谢谢了!
您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|站长邮箱|小黑屋|手机版|Office中国/Access中国 ( 粤ICP备10043721号-1 )  

GMT+8, 2024-5-27 03:44 , Processed in 0.093413 second(s), 34 queries .

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表