Advantages


• Centralization, standardization and reuse of application logic. The advantages of centralizing replicated data  also apply to replicated processes or code


• Sitting processing appropriately on the database server. In client–server architectures, sitting applications on powerful servers can reduce the traffic along communication lines


• Improving the productivity of application building. The reuse of centralized database logic can enhance the productivity of the development of information systems


 

Disadvantages


• There is some evidence that a system built substantially out of triggers and stored procedures may be difficult to manage. It may prove difficult to design, implement and perform administration tasks with active databases

• There are certain problems of transparency. Moving functionality to the database has the tendency of hiding functionality from the user. The database, not the user, controls much of the activity in an active database

• There is currently no standard syntax for writing stored procedures or triggers. Hence, there is the inherent concern of being tied-in to a particular DBMS vendor if an organization chooses to write most of its application logic as triggers and procedures

• Using triggers and stored procedures normally has a performance implication. As the number of triggers increases then the processing overhead increases. For this reason, many systems have mechanisms for enabling and disabling triggers when performance proves an issue.