第6章 存储过程和触发器 6.1 存储过程 在Oracle中,可以在数据库中定义子程序,这种程序块称为存储过程 (procedure)。它存放在数据字典中,可以在不同用户和应用程序之间共享,并可 实现程序的优化和重用。使用存储过程的优点是: (1) 过程在服务器端运行,执行速度快。 (2) 过程执行一次后代码就驻留在高速缓冲存储器,在以后的操作中,只需从高 速缓冲存储器中调用已编译代码执行,提高了系统性能。 (3) 确保数据库的安全。可以不授权用户直接访问应用程序中的一些表,而是授 权用户执行访问这些表的过程。非表的授权用户除非通过过程,否则就不能访问 这些表。 (4) 自动完成需要预先执行的任务。过程可以在系统启动时自动执行,而不必在 系统启动后再进行手工操作,大大方便了用户的使用,可以自动完成一些需要预 先执行的任务。 6.1.1 存储过程的创建和执行 用户存储过程只能定义在当前数据库中,可以使用SQL命令语句或OEM创建存 储过程。缺省情况下,用户创建的存储过程归登录数据库的用户所拥有,DBA可 以把许可授权给其他用户。在用户的定义中不能使用下列对象创建语句: CREATE VIEW CREATE DEFAULT CREATE RULE CREATE PROCEDURE CREATE TRIGGER 6.1.1 存储过程的创建和执行
原创力文档

文档评论(0)