2009-06-25 5 views
271

¿Cuál es la diferencia entre SQL, PL-SQL y T-SQL?¿Cuál es la diferencia entre SQL, PL-SQL y T-SQL?

¿Alguien puede explicar cuáles son las diferencias entre estos tres y proporcionar escenarios en los que cada uno se utilizaría de manera relevante?

+0

SQL es un lenguaje orientado a datos para seleccionar y manipular conjuntos de datos. PL/SQL es un lenguaje de procedimiento para crear aplicaciones –

+0

El lenguaje de consulta que utiliza Microsoft SQL Server es una variante del estándar ANSI Lenguaje de consulta estructurado, SQL. La variante de SQL Server se llama Transact-SQL. –

+0

SQL es lenguaje de consulta estructurado PL/SQL es un lenguaje de procedimiento extendido a sql que es desarrollado por oracle T-SQL es desarrollado por microsoft –

Respuesta

287
  • SQL es un lenguaje de consulta para operar en conjuntos.

    Es más o menos estandarizados, y utilizado por casi todos los sistemas de gestión de bases relacionales: SQL Server, Oracle, MySQL, PostgreSQL, DB2, Informix, etc.

  • PL/SQL es un lenguaje de procedimientos propietario utilizado por Oracle

  • PL/pgSQL es un lenguaje de procedimientos PostgreSQL utilizado por

  • TSQL es un lenguaje de procedimiento patentado utilizado por Microsoft en SQL Server.

Los lenguajes de procedimiento están diseñados para ampliar las capacidades de SQL y poder integrarse bien con SQL. Se agregan varias características como variables locales y procesamiento de cadena/datos. Estas características hacen que el lenguaje sea completo.

También se utilizan para escribir procedimientos almacenados: piezas de código que residen en el servidor para gestionar reglas de negocio complejas que son difíciles o imposibles de gestionar con operaciones basadas en conjuntos puros.

+6

TSQL también es utilizado por Sybase; al menos en Oracle, los procedimientos PL/SQL pueden hacer mucho más que solo administrar "reglas comerciales"; Los procedimientos PL/SQL pueden acceder a sitios web, enviar correos electrónicos, etc. –

+3

PL/SQL no existe únicamente en la base de datos, p. Oracle Forms contiene una implementación del lado del cliente de PL/SQL. –

+2

Tenga en cuenta que cada base de datos tiene su propia implementación de SQL (T-SQL y PL/SQL son dos de los más comunes), ANSII estándar SQL a menudo se usa cuando se utilizan múltiples backends, pero no todas las bases de datos usan todas las características ANSII SQL. Y la implementación específica de la base de datos de SQl tiende a ser la que mejor funciona para esa base de datos: después de todo, tienen que darle una razón para usar su base de datos, ¿no? – HLGEM

41
  • SQL un lenguaje para hablar con la base de datos . Le permite seleccionar datos, mutar y crear objetos de base de datos (como tablas, vistas, etc.), cambiar la configuración de la base de datos .
  • PL-SQL un lenguaje de programación procedimental (con SQL embebido)
  • T-SQL (procedimiento) extensiones para SQL utilizan por SQL Server
+0

Debe ser SPL (procedimiento almacenado Lang), PL es demasiado general (es decir, C). – samosaris

7

Structured Query Language - SQL: es un estándar ANSI utilizado por casi todos Los vendedores de SGBD en todo el mundo. Básicamente, SQL es un lenguaje utilizado para definir y manipular datos [DDL y DML].

PL/SQL es un lenguaje creado por el universo de Oracle. PL/SQL combina programación de instrucciones de procedimiento y permite la creación de programas que opera directamente en el escenario de la base de datos.

T-SQL es un producto de Microsoft que alinea patrones SQL, con algunas peculiaridades. Por lo tanto, siéntase libre de probar sus límites.

78

SQL

SQL se utiliza para comunicarse con una base de datos, es el lenguaje estándar para los sistemas de gestión de bases de datos relacionales.

En detalle Structured Query Language es un lenguaje de programación de propósito especial diseñado para la gestión de los datos almacenados en un sistema de gestión de bases de datos relacionales (RDBMS), o para el procesamiento de flujo en un sistema relacional de gestión de flujo de datos (RDSMS).

Originalmente basado en álgebra relacional y cálculo relacional de tuplas, SQL consiste en un lenguaje de definición de datos y un lenguaje de manipulación de datos. El alcance de SQL incluye inserción de datos, consulta, actualización y eliminación, creación y modificación de esquemas y control de acceso a datos. Aunque SQL a menudo se describe como, y en gran medida es, un lenguaje declarativo (4GL), también incluye elementos de procedimiento.

PL/SQL

PL/SQL es una combinación de SQL junto con las operaciones de procedimiento de lenguajes de programación. Fue desarrollado por Oracle Corporation

Especialidades de PL/SQL

  • completamente portátil, de alto rendimiento de procesamiento de transacciones idioma.
  • proporciona un entorno de programación interpretado y OS independiente .
  • directamente desde la línea de comandos interfaz SQL * Plus.
  • Llamada directa también se puede hacer desde llamadas de lenguaje de programación externo a la base de datos.
  • La sintaxis general se basa en el lenguaje de programación ADA y Pascal .
  • Además de Oracle, está disponible en la base de datos en memoria de TimesTen y IBM DB2.

T-SQL

Abreviatura de Transacción-SQL, una forma extendida de SQL que añade las variables declaradas, control de transacciones, errores y ExceptionHandling y procesamiento fila a SQL

El Estructurado Query Language o SQL es un lenguaje de programación que se enfoca en administrar bases de datos relacionales. SQL tiene sus propias limitaciones que espolearon al gigante del software Microsoft para construir sobre SQL con sus propias extensiones para mejorar la funcionalidad de SQL. Microsoft agregó código a SQL y lo llamó Transact-SQL o T-SQL. Tenga en cuenta que T-SQL es propietario y está bajo el control de Microsoft, mientras que SQL, aunque desarrollado por IBM, ya es un formato abierto.

T-SQL agrega una serie de características que no están disponibles en SQL.

Esto incluye elementos de programación de procedimiento y una variable local para proporcionar un control más flexible de cómo fluye la aplicación.También se agregaron varias funciones a T-SQL para hacerlo más poderoso; funciones para operaciones matemáticas, operaciones de cadena, procesamiento de fecha y hora, y similares. Estas adiciones hacen que T-SQL cumpla con la prueba de integridad de Turing, una prueba que determina la universalidad de un lenguaje informático. SQL no está completo y está muy limitado en el alcance de lo que puede hacer.

Otra diferencia significativa entre T-SQL y SQL son los cambios realizados en los comandos DELETE y UPDATE que ya están disponibles en SQL. Con T-SQL, los comandos DELETE y UPDATE permiten la inclusión de una cláusula FROM que permite el uso de JOIN. Esto simplifica el filtrado de registros para seleccionar fácilmente las entradas que coinciden con ciertos criterios a diferencia de SQL, donde puede ser un poco más complicado.

Elegir entre T-SQL y SQL es todo depende del usuario. Aún así, el uso de T-SQL es aún mejor cuando se trata de instalaciones de Microsoft SQL Server. Esto se debe a que T-SQL también es de Microsoft, y el uso de los dos juntos maximiza la compatibilidad. SQL es preferido por personas que tienen múltiples backends.

Referencias , Wikipedea , Puntos Tutorial : www.differencebetween.com

+3

IMO que es actualmente la mejor respuesta (sin embargo, la respuesta de manoj y la publicación de blog también valen la pena leerla). – salcoin

+1

Estoy de acuerdo; esta respuesta es un poco mejor. –

+0

¿Por qué esta respuesta no está en la parte superior. Si bien la respuesta aceptada es buena y responde la pregunta, ¡esta es muy superior! – DanteTheSmith

25

1. SQL o Lenguaje de consulta estructurado fue desarrollado por IBM para su producto "Sistema R".

tarde ANSI lo hizo como un estándar en la que todos los lenguajes de consulta se basan en y han extendido este para crear sus propios trajes de idioma Base de Datos de la consulta. El primer estándar fue SQL-86 y última de las cuales SQL: 2011

2. T-SQL o Transact-SQL fue desarrollado por Sybase y más tarde co-propiedad por Microsoft SQL Server.

3. PL/SQL o de procedimiento Lengua/SQL Oracle fue base de datos, conocido como "Software Relación" ese momento.

Lo he documentado en mi blog post.

+2

Esta respuesta es más exhaustiva que la respuesta aprobada, y la publicación del blog es una excelente lectura. – salcoin

0

SQL es un estándar y hay muchos proveedores de bases de datos como Microsoft, Oracle que implementa este estándar usando su propio lenguaje propietario.

Microsoft usa T-SQL para implementar estándares SQL para interactuar con datos mientras que Oracle usa PL/SQL.

Cuestiones relacionadas