块通常作为存储过程、函数、子程序或触发器的一部分编写。存储过程、函数和触发器程序被命名并存储在数据库中以供重新使用。对于快速(一次性)执行(例如测试),您只需输入块而无需提供名称或将其存储在数据库中。
此类型的块称为匿名块。匿名块未命名并且不存储在数据库中。从应用程序缓冲区执行并擦除块后,除非在应用程序中重新输入块代码,否则无法重新执行块。
通常,相同的代码块将多次重新执行。为了反复运行代码块而不必每次都重新输入代码,通过一些简单的修改,可以将匿名块转换为存储过程或函数。以下各节讨论如何创建可以存储在数据库中并被另一个存储过程、函数或应用程序反复调用的存储过程或函数。