SQL、PL-SQL和T-SQL之间有什么区别?
这三者之间的区别是什么,并能提供各自适用的场景吗?
SQL、PL-SQL和T-SQL之间有什么区别?
这三者之间的区别是什么,并能提供各自适用的场景吗?
SQL
SQL被用于与数据库通讯,是关系型数据库管理系统的标准语言。
具体来说,Structured Query Language (结构化查询语言)是一种专门用于管理关系型数据库管理系统(RDBMS)中数据或在关系数据流管理系统(RDSMS)中进行流处理的编程语言。
SQL最初基于关系代数和元组关系演算,包括数据定义语言和数据操作语言。SQL的范围包括数据插入、查询、更新和删除,模式创建和修改以及数据访问控制。尽管SQL通常被描述为(并且在很大程度上是)申明式语言(4GL),但它也包括过程性元素。
PL/SQL
PL/SQL是SQL与编程语言的过程性特点相结合的组合。它是由Oracle Corporation开发的。
PL/SQL的特点
T-SQL
Transaction-SQL (事务性SQL)是SQL的扩展形式,增加了声明变量、事务控制、错误和异常处理以及对行的处理。
结构化查询语言(SQL)是一种专注于管理关系型数据库的编程语言。SQL有其自身的限制,这促使软件巨头微软开发了自己的扩展来增强SQL的功能。
微软在SQL中添加了代码并称其为Transact-SQL或T-SQL。需要记住的是,T-SQL是专有的,并受微软控制,而SQL虽然由IBM开发,但已成为开放格式。T-SQL添加了一些在SQL中不可用的功能。
这包括过程化编程元素和本地变量,以提供更灵活的控制应用程序流程。还添加了许多函数到T-SQL中,使其更加强大;包括数学运算、字符串操作、日期和时间处理等函数。这些添加使得T-SQL符合图灵完整性测试,该测试确定计算语言的普适性。SQL不是图灵完整的,并且在其所能实现的范围内非常有限。
T-SQL和SQL之间的另一个重要区别是对SQL中已有的DELETE和UPDATE命令所做的更改。使用T-SQL,DELETE和UPDATE命令都允许包含FROM子句,这允许使用JOINs。这简化了筛选记录以轻松挑选符合特定条件的条目,而与SQL相比可能会更加复杂。
在T-SQL和SQL之间进行选择取决于用户。 不过,在处理Microsoft SQL Server安装时,使用T-SQL仍然更好。这是因为T-SQL也来自微软,使用两者可以最大限度地提高兼容性。SQL适用于具有多个后端的用户。
参考资料:维基百科,Tutorial Points: www.differencebetween.com
SQL
是一种用来与数据库交互的语言,它允许你选择数据、更改数据库对象(如表格、视图等)和修改数据库设置。PL-SQL
是一种嵌入SQL的过程化编程语言。T-SQL
是SQL Server使用的过程化扩展语言。1. SQL 或结构化查询语言是由IBM为他们的产品“System R”开发的。后来,ANSI将其作为标准,所有查询语言都基于这一标准,并扩展了自己的数据库查询语言套件。第一个标准是SQL-86,最新的是SQL:2016。
2. T-SQL 或 Transact-SQL 是由 Sybase 开发的,后来由 Microsoft SQL Server 共同拥有。
3. PL/SQL 或过程化语言/SQL 是 Oracle 数据库开发的,当时称为“关系软件”。
我在我的博客文章中记录了这些内容。
结构化查询语言 - SQL: 是一种由全球几乎所有SGBD供应商使用的ANSI标准。基本上,SQL是一种用于定义和操作数据[DDL和DML]的语言。
PL/SQL是由Oracle宇宙创建的一种语言。 PL/SQL组合了编程过程指令,并允许创建直接在数据库场景上运行的程序。
T-SQL是微软产品,与SQL模式对齐,具有某些特殊性。因此,请随意测试您的极限。
SQL是一种标准语言,许多数据库供应商如Microsoft、Oracle等都使用自己的专有语言来实现这个标准。
Microsoft使用T-SQL来实现与数据的交互,而Oracle使用PL/SQL。