[Okta Webinar] Learn how to a build a cloud-first strategyRegister Now



Posted on 2006-04-26
Medium Priority
Last Modified: 2008-01-09
Anyone know thats the difference between the three?
Question by:paulwhelan
LVL 143

Accepted Solution

Guy Hengel [angelIII / a3] earned 80 total points
ID: 16541833
PLSQL is the procedural language in Oracle
TSQL is the procedural language in SQL Server
SQL is the generic Structured Query language, where all database products implemented as close as possible to the ANSI standard

Expert Comment

ID: 16542185
The "PL" in PL/SQL is short for Procedural Language. It is an extension to SQL that allows you to create PL/SQL programs that contain standard programming features such as error handling, flow-of- control structures, and variables, all allowing you to manipulate Oracle data. By itself, SQL does not support these concepts.

plsql is a proprietary language coined by oracle for use with their databases. Sql (structured query language) by itself isn't really a programming language. Is is more like a data sublanguage. You need to combine sql with some other programming language (like C, Visual Basic, or Java) to create a complete application. This is essentially what oracle did. plsql combines sql with procedural programming language.

In T-SQL there are significant extensions to the ANSI SQL-92 standard which means converting applications to a different database later will be a code challenge re-write. The INNER JOIN, LEFT OUTER, RIGHT OUTER JOIN syntax differs from the classic JOIN.
b. No Java database engine as in Oracle.
c. Stored procedures in SQL Server are not compiled until executed (which means overhead, late binding and finding errors at execution time only!).
d. No ability to read/write from external files from a stored procedure.
e. PL/SQL has many DBMS system packages, where T-SQL relies only on a limited number of extended and system stored procedures in the master database.
f. PL/SQL is better in error exception handling, and there is no such thing as exceptions in T-SQL (T-SQL uses @@error -- not elegant!).
g. T-SQL does not have the MINUS operator, that makes finding schema differences more difficult in SQL Server.
h. In SQL Server there is no "dead connection detection". Clients who lose their connection may still hold locks until a DBA is notified to kill their server side processes.
i. In SQL Server there is no such thing as SQL*NET aliases/service names! This means applications have to hard code the actual server name into their apps, making it difficult to move databases later to load balance across servers.

Hope that will answer your query.

Chetan Sachdeva

Featured Post

Concerto's Cloud Advisory Services

Want to avoid the missteps to gaining all the benefits of the cloud? Learn more about the different assessment options from our Cloud Advisory team.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

In this article, I’ll look at how you can use a backup to start a secondary instance for MongoDB.
Creating a Cordova application which allow user to save to/load from his Dropbox account the application database.
This lesson discusses how to use a Mainform + Subforms in Microsoft Access to find and enter data for payments on orders. The sample data comes from a custom shop that builds and sells movable storage structures that are delivered to your property. …
Despite its rising prevalence in the business world, "the cloud" is still misunderstood. Some companies still believe common misconceptions about lack of security in cloud solutions and many misuses of cloud storage options still occur every day. …
Suggested Courses

872 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question