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


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

¿Puede alguien explicar cuáles son las diferencias entre estos tres, y proporcionar escenarios donde cada uno sería usado de manera relevante?

 294
Author: Adrian Wragg, 2009-06-25

6 answers

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

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

  • PL/SQL es un lenguaje procesal propietario utilizado por Oracle

  • PL/pgSQL es un lenguaje procedimental usado por PostgreSQL

  • TSQL es un lenguaje de procedimiento propietario utilizado por Microsoft en SQL Servidor.

Los lenguajes de procedimiento están diseñados para extender las habilidades de SQL mientras se pueden integrar bien con SQL. Se agregan varias características, como variables locales y procesamiento de cadenas / datos. Estas características hacen que el lenguaje Turing-completo.

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

 306
Author: Quassnoi,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2015-03-10 19:23:56

SQL

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

In detail Structured Query Language es un lenguaje de programación de propósito especial diseñado para administrar los datos mantenidos en un sistema de gestión de bases de datos relacionales (RDBMS), o para el procesamiento de flujos en un sistema de gestión de flujos de datos relacionales (RDSMS).

Originalmente basado en álgebra relacional y tupla cálculo relacional, 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, consulta, actualización y eliminación de datos, creación y modificación de esquemas y control de acceso a datos. Aunque SQL se describe a menudo como, y en gran medida es, un lenguaje declarativo (4GL), también incluye elementos procedimentales.

PL / SQL

PL / SQL es una combinación de SQL junto con las características procedimentales de la programación idioma. Fue desarrollado por Oracle Corporation

Especialidades de PL / SQL

  • completamente portátil, procesamiento de transacciones de alto rendimiento idioma.
  • proporciona una programación incorporada interpretada e independiente del sistema operativo ambiente.
  • se llamará directamente desde la interfaz SQL*Plus de línea de comandos.
  • La llamada directa también se puede realizar desde llamadas a lenguajes de programación externos a la base de datos.
  • la sintaxis general se basa en eso de programación ADA y Pascal idioma.
  • Aparte de Oracle, está disponible en TimesTen in-memory database y IBM DB2.

T-SQL

Abreviatura de Transaction-SQL, una forma extendida de SQL que agrega variables declaradas, control de transacciones, gestión de errores y excepciones y procesamiento de filas a SQL

El Lenguaje de Consulta Estructurado o SQL es un lenguaje de programación que se centra en la gestión de bases de datos relacionales. SQL tiene su propio limitaciones que impulsaron al gigante del software Microsoft a 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 la programación procedimental elementos 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 es Turing completo y es muy limitado en el alcance de lo que puede hacer.

Otro la 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 JOINs. Esto simplifica el filtrado de registros para seleccionar fácilmente las entradas que coinciden con un cierto criterio a diferencia de SQL donde puede ser un poco más complicado.

Elegir entre T-SQL y SQL depende del usuario. Todavía, usando 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 de Tutorial :www.differencebetween.com

 87
Author: Arunprasanth K V,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2018-05-30 10:13:05
  • SQL un lenguaje para hablar con el base. Le permite seleccionar datos, mutar y crear objetos de base de datos (como tablas, vistas, etc.), cambio configuración de la base de datos.
  • PL-SQL un lenguaje de programación procedimental (con SQL incrustado)
  • T-SQL extensiones (procedimentales) para SQL utilizadas por SQL Server
 42
Author: diederikh,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2017-11-16 07:09:32

1. SQL o Lenguaje de Consulta Estructurado fue desarrollado por IBM para su producto "System R".

Más tarde ANSI lo hizo como un Estándar en el que se basan todos los Lenguajes de Consulta y lo han extendido para crear sus propios trajes de Lenguaje de Consulta de Base de datos. El primer estándar fue SQL-86 y más reciente siendo SQL:2011

2. T-SQL o Transact-SQL fue desarrollado por Sybase y posteriormente copropiedad de Microsoft SQL Servidor.

3. PL/SQL o Procedural Language/SQL era Oracle Database, conocido como "Relation Software" en ese momento.

He documentado esto en mi entrada de blog .

 28
Author: Manoj Pandey,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2015-05-08 12:44:07

Structured Query Language - SQL: es un estándar ANSI utilizado por casi todos los proveedores 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 Oracle universe. PL / SQL combina instrucciones de procedimiento de programación y permite la creación de programas que operan directamente en el escenario de la base de datos.

T-SQL es Microsoft product align SQL patterns, con algunas peculiaridades. Por lo tanto, siéntase libre de probar su limitaciones.

 7
Author: Jayron Soares,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2015-09-28 06:42:49

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

Microsoft utiliza T-SQL para implementar el estándar SQL para interactuar con los datos, mientras que Oracle utiliza PL/SQL.

 0
Author: Kenta,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2017-11-28 06:36:45