2012-11-06 151 views
6

我必须学习Oracle SQL的工作方式,并深受O'Reilly着作“Oracle PL/SQL编程”的启发,因为它已经得到了高度评​​价。但是,我不清楚PL/SQL是否是与SQL不同的语言,或者它只是一个超集,或者它是否是其他语言。有人可以帮我吗?谢谢。Oracle SQL与Oracle PL/SQL

回答

12

SQL是数据查询和操作的langauge。 PL/SQL是一种过程式编程语言。

PL/SQL是图灵完整的语言,用于构建复杂程序的语法。它还拥有大量的库,为它提供了大量的功能。然而,毫无疑问,它的主要用途是构建嵌入SQL语句以检索和处理数据的存储过程。所以在这个意义上,PL/SQL是SQL的超集。

尽管在早期版本的数据库中,PL/SQL SQL引擎落后于数据库引擎,所以某些SQL功能在PL/SQL中不可用。自9i以来,Oracle一直在努力让这两者保持一致,并且很难找到我们在纯SQL中可以做的任何事情,而我们在PL/SQL中无法做到这一点。

5

它是一个超集。

所有的SQL加上一些程序的扩展 - 这样你可以有变量,循环,条件逻辑等

+0

啊,太棒了。谢谢! – ConorW