SQL 完全可以自己这样做,你使用一种叫作“触发器”的东西。
不会用的话,请先看一些资料或再来提问。
不会用的话,请先看一些资料或再来提问。
解决方案 »
- 绑定DATAGRID显示的问题
- SQL Server 2000 "发布"功能的作用是什么?
- 请教如何向MSSql中加入URL类型的数据
- 如何读取类型为varbinary的字段里的数据
- 求一SQL语句
- 关于数据库的时间字段的问题(值的比较)?
- 如何把MS SQL2000数据库中的表导入Powerdesigner中啊?
- sql合并任意结果集,横向的
- 请大家帮助!
- ?为什么我的SQL SERVER数据库不能进行备份操作?
- 怎么把DateTimePicker中的内容转化成只含年月日的字符串
- 能不能通过delphi对sql server 2000进行停止与启动,类似于sql server服务管理器功能。。
你可以做一个触发器,当数量和金额插入、更新时计算一下放进去。
不过看起来这个字段有些冗余,没有必要,取数据时计算更好些。
查询时用 select 数量, 金额, (数量*金额) As 总和 from ...
或者建一个视图
drop trigger TriggerName
go
create trigger TriggerName on t
for update
as
declare @variantname1 int
declare @variantname2 int
declare @id int select @Id=Id from deleted
select @variantname1=a from inserted
select @variantname2=b from inserted update t set c=@variantname1 * @variantname2 where Id=@Id
你的 select @id=id from deleted 中 deleted 从哪里来的?
1.计算列;
2.视图。
Create View as
Select 数量, 金额,数量*金额 as "总和" From Table
还有,楼上提的Deleted表是SQL Server中一个专用于触发器的表,它的结构与刚被修改的表相同,存储当前操作被修改的记录。