2011-01-19 146 views
0

我从未使用触发器或存储过程。现在我想研究如何以及何时使用它。 我有表名为Products,当产品表填充行时,我想将ProductID和UnitsInStock和paset复制到Inventory表中。库存表中有一个问题是行填写时必须填写购买用户的列。触发器或存储过程会对这种情况有用吗?SQL Server触发器,存储过程

回答

1

我个人从来不会使用触发器,当我使用的代码它是好的,如果所有的工作是在SQL中完成。原因是其他人首先很难意识到它是在后端工作的触发器。如果代码中有错误,触发器是你检查的最后一件事。如果列名更改,则很容易发现代码中的错误。存储过程很好,但这一切都取决于组织和组织。我已经开始在代码中使用sql,并且喜欢它,因为没有来回查看数百个相关存储过程的工作。我的看法虽然...

0

如果您在插入或更新后只需将某个表中的内容复制到另一个表中,则触发器是正确的方法。

但是,如果您的情况下一列必须填写用户应用的数据,您可能必须从您的代码中执行此操作。

关于存储过程的使用:看看this。但是网络上有很多关于这个主题的讨论。只是谷歌了一下。

0

使用存储过程,通过该系统所需要的参数的所有值,然后内的交易后更改产品表,然后在库存表,然后立即提交更改这两个表 - 所以无论是两个表得到更新,或者都没有。