我知道的是前者是Oracle,后者是SQL Server。我认为在一个平台上有些东西可能比另一个平台更容易,但是是否有一些我可以在PL中做而不能在T中做的事情呢?
是否存在基本差异需要我了解?如果有,那它们是什么?
我知道的是前者是Oracle,后者是SQL Server。我认为在一个平台上有些东西可能比另一个平台更容易,但是是否有一些我可以在PL中做而不能在T中做的事情呢?
是否存在基本差异需要我了解?如果有,那它们是什么?
T-SQL和PL/SQL是两种完全不同的编程语言,具有不同的语法、类型系统、变量声明、内置函数和过程以及编程能力。
它们唯一的共同点是直接嵌入SQL语句,并在数据库中存储和执行。
(在Oracle Forms中,即使是客户端代码也使用PL/SQL,尽管与数据库存储的PL/SQL集成几乎无缝)
使用仅有 ANSI-SQL 语句就可以运行多个查询,但如果您想要进行任何 IF 语句或处理任何错误,您需要使用超出 ANSI 规范的内容,因此必须使用 T-SQL 或 PL/SQL(如果您不使用 Microsoft 或 Oracle,则需要查看供应商的名称)。
我可以补充的一点是,把你在一个语言中知道的东西带到另一个语言中时,需要忘记你所知道的内容(除了尽可能使用基于集合的逻辑)。
其中一个区别的例子是,在T-SQL中,光标通常被认为不是理想的解决方案,除非有一个非常好的原因使用它们,而这种情况通常并不存在。在Oracle中,光标更加优化,例如它们具有批量处理能力,就像普通的SQL语句一样可以处理一组数据。因此,在Oracle中使用光标不会像在T-SQL代码审查中那样立即失败。
总体而言,T-SQL更容易学习,因为它在语言方面没有太多的内容。 PL/SQL是一种更丰富的语言,因此更复杂。如果您有一本好书,那么学习PL/SQL并不困难。总的来说,我非常喜欢PLSQL的深度和TSQL的简单性。
PL/SQL 和 T-SQL 是 SQL 的扩展。 PL/SQL 用于 Oracle 数据库,而 T-SQL 用于 Microsoft 数据库。
以下是更多有用的信息: http://techdifferences.com/difference-between-t-sql-and-pl-sql.html