各数据库的拓展sql语法不一,但其都是为了是为了在标准sql的基础上使其更具编程性
文档为英文版,内容有点多
ISO_IEC 9075-1-2016
结构化查询语言,包括:
T-SQL 即 Transact-SQL,是 SQL 在 Microsoft SQL Server 上的增强版,它是用来让应用程式与 SQL Server 沟通的主要语言。T-SQL 提供标准 SQL 的 DDL 和 DML 功能,加上延伸的函数、系统预存程序以及程式设计结构(例如 IF 和 WHILE)让程式设计更有弹性。
PLSQL 是Procdure Language/Standards Query Language的缩写,PL/SQL是对SQL语言存储过程语言的扩展。它现在已经成为一种过程处理语言,简称PL/SQL。目前,PL/SQL 主要包含两部分,其一是数据库引擎部分,叫做数据库PL/SQL。其二是可嵌入其他产品工具中的独立引擎,也叫工具PL/SQL。两者编程非常类似,都具有特定结构、语法和逻辑机制。另外,工具PL/SQL还增加了用于支持工具的语法。
pl/pgsql也是一种程序语言,叫做过程化SQL语言(Procedural Language/ Postgres SQL)。pl/pgsql是Postgresql [1] 数据库对SQL语句的扩展。在普通SQL语句的使用上增加了编程语言的特点,所以pl/pgsql就是把数据操作和查询语句组织在pl/pgsql代码的过程性单元中,通过逻辑判断、循环等操作实现复杂的功能或者计算的程序语言。
PL/PGSQL与上述两种一个主要区别是多了SQL Shell(psql)