Oracle SQL与Oracle PL/SQL的区别

9

我需要学习Oracle SQL以应对工作需求,我看到O'Reilly出版的《Oracle PL/SQL Programming》书籍评价非常高,很有兴趣。但是,我不确定PL/SQL是否是一种与SQL不同的语言,还是仅仅是SQL的超集,或者其他什么东西。请问有人能帮助我吗?谢谢。


请见 https://www.quora.com/What-is-the-difference-between-Oracle-SQL-and-PL-SQL# - yu yang Jian
2个回答

17

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

PL/SQL是图灵完备的语言,具有构建复杂程序的语法。它还拥有许多库,使其具有广泛的功能。然而,毫无疑问,它的主要用途是构建存储过程,这些存储过程嵌入SQL语句以检索和处理数据。因此,在某种程度上,PL/SQL是SQL的超集。

尽管在数据库的早期版本中,PL/SQL SQL引擎落后于数据库引擎,因此一些SQL功能在PL/SQL中不可用。自从9i以来,Oracle一直在努力保持两者同步,很难找到我们只能在纯SQL中执行的任何操作也不能在PL/SQL中执行的情况。


5

它是一个超集。

包含了所有的SQL,还加入了一些过程式扩展——这意味着你可以使用变量、循环、条件逻辑等等。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接