CC 表里有的 DD 表中一定有吗?若是往CC里插入一条新纪录,DD中是否也应插入呢?两个表的纪录是不是同时插入的?
试试这句话,当你往cc里插入完时,执行下面这句话。
UPDATE DD SET dquantity=sum(cquantity) from cc,DD where CC.pid='tom' AND DD.pid=CC.pid
试试这句话,当你往cc里插入完时,执行下面这句话。
UPDATE DD SET dquantity=sum(cquantity) from cc,DD where CC.pid='tom' AND DD.pid=CC.pid
解决方案 »
- 求助一条SQL语句。
- 如何删除
- 视图相减?高手请出手吧!
- 安装程序配置服务器失败
- com.microsoft.sqlserver.jdbc.SQLServerDriver:TDS预登录信息不完整
- SQLserver安装后的问题!
- 怎样在一台未装SQL server 的机器上使用bcp将服务器上的数据导入本地,应在本机上做何设置?
- 请问如何在发布时不用在客户端安装SQLSERVER?
- 小弟刚学网络数据库,遇到几个问题,高手请进
- 客运售票系统的安全性问题有那些??(论文中,请给宝贵意见和建议)
- sql server动态实时刷新,紧急紧急紧急!!!
- 高手指教:我用vc 6.0 odbc类库cdatabase 可以调用ms sql server的存储过程,但存储过程的output参数如何返回给vc?
删除、修改CC表的时候怎么办?
dd表里的dquantity是对应的相同pid的表cc里的cquantity之和
所以不管插入,修改,还是删除,都会影响dquantity的值。
用程序代码实现很麻烦,所以我才想用触发器实现。
TO echo_llee:
UPDATE DD SET dquantity=sum(cquantity) from cc,DD where CC.pid='tom' AND DD.pid=CC.pid
里 CC.pid='tom'如果把tom值换成变量,该如何写?另:我用的是MSSQLSERVER2000。
多谢!
on CC
for insert,delete,update
asupdate dd set dquantity=t.rs
from dd,(
select pid,sum(cquantity) as rs from cc where pid in (select pid from inserted union select pid from deleted)
group by pid
) t
where t.pid=dd.pidgo
2 update dd set dquantity=rs where pid='tom'
on CC
for insert,delete,update
asupdate dd set dquantity=t.rs
from dd,(
select pid,sum(cquantity) as rs from cc where pid in (select pid from inserted union select pid from deleted)
group by pid
) t
where t.pid=dd.pidgo