Sunteți pe pagina 1din 7

SQL

• Definiciones de SQL:
✔ (Structured Query Language) Lenguaje utilizado para base de datos
desarrollado entre 1974 y 1975 en IBM Research. Por esos años se
llamaba SEQUEL (Structured English QUEry Language) y servía como
interfaz para un sistema experimental de base de datos llamado SYSTEM
R.
✔ SQL fue introducido por Oracle por primera vez en una base de datos
comercial en el año 1979.

Se convirtió en un estándar ANSI e ISO dando lugar al SQL-86 o SQL1,


que se fue actualizando a SQL-92 o SLQ2, luego a SQL3 y actualmente
(2004) a SQL4.

El lenguaje se utiliza para definir, consultar y actualizar la base de datos,


y es el más popular de su estilo.

La estructura básica para consultas en SQL es select-from-where.

Conceptualmente, SQL es un lenguaje de definición de datos (LDD), un


lenguaje de definiciones de vistas (LDV) y un lenguaje de manipulación
de datos (LMD), que posee también capacidad para especificar
restricciones y evolución de esquemas.[1]
✔ SQL (Structured Query Language) es un potente lenguaje informático
que cumple las funciones de DDL y DML en los SGBD relacionales. Su
origen está en el lenguaje SEQUEL (Structured English QUEry
Language) desarrollado en IBM en los años 1974-75. Oracle fue el
primer fabricante de sistemas de bases de datos en comercializar una
implementación de SQL en 1979. IBM lanzó el producto SQL/DS en
1981 y dos años más tarde el conocido DB2.
Se trata de un lenguaje fuertemente basado en el inglés, que puede ser
utilizado en modo conversacional mediante un intérprete o bien
formando parte de un programa desarrollado en un lenguaje de
programación anfitrión como C, Cobol, etc. (SQL embebido). La
característica relacional más importante de SQL es que permite acceder a
los datos sin necesidad de especificar cómo se ha de realizar dicho
acceso permitiendo así la "navegación automática" por los datos.
La versión actual más común del lenguaje es la denominado SQL2 que
respecto al estándar anterior presenta las ventajas de un mayor
incremento de la capacidad expresiva, nuevos operadores añadidos y
mejor tratamiento de errores, entre otras. SQL3 incorpora al lenguaje
características propias del paradigma de orientación a objeto. [2]
✔ Lenguaje de Querry y de programación muy utilizado para acceder,
ejecutar querry, actualizar y gestionar los datos en los sistemas de
database relacionales.

Utilizando un lenguaje SQL es posible recuperar los datos de un


database, crear databases y objetos de database, añadir datos, modificar
datos existentes y ejecutar otras funciones más complejas. Con este
lenguaje es posible cambiar la configuración del server, modificar las
impostaciones de un database o de una sesión y no último controlar los
datos y las instrucciones de acceso. [3]
✔ Los orígenes del SQL están ligados a los de las bases de datos
relacionales. En 1970 Dr. Edgar Frank Codd, investigador de IBM,
propone el modelo relacional y asociado a este un sub lenguaje de acceso
a los datos basado en el cálculo de predicados.

Basándose en estas ideas los laboratorios de IBM definen el lenguaje


SEQUEL (Structured English QUEry Language) que más tarde sería
ampliamente implementado por el SGBD experimental System R,
desarrollado en 1977 también por IBM. Sin embargo, fue Oracle quien lo
introdujo por primera vez en 1979 en un programa comercial. El
SEQUEL terminaría siendo el predecesor de SQL. La mayoría de las
aplicaciones de bases de datos complejas y muchas otras más pequeñas
pueden ser manejadas usando SQL. Es un lenguaje de programación
interactivo y estandarizado para extraer información y actualizar una
base de datos. [4]

✔ SQL: Structured Query Language o Lenguaje de Consultas Estructurado.


Es el lenguaje que permite la comunicación con el Sistema Gestor de
Bases de Datos (Oracle en nuestro caso).

✔ El SQL es un lenguaje unificado

✔ Lo utilizan todo tipo de usuarios, desde el administrador de la base de


datos, DBA, hasta el usuario final.

✔ El SQL es un lenguaje no procedimental.


El usuario especifica Qué quiere, no Cómo ni Dónde conseguirlo.
El SQL es relacionalmente completo.
Permite la realización de cualquier consulta de datos.
SQL= DDL + DML
Las sentencias del SQL se clasifican como parte del DDL o del DML. [5]

• TIPOS DE SENTENCAIAS:
✔ Las sentencias SQL pertenecen a dos categorías principales: Lenguaje de
Definición de Datos, DDL y Lenguaje de Manipulación de Datos, DML.
Estos dos lenguajes no son lenguajes en sí mismos, sino que es una
forma de clasificar las sentencias de lenguaje SQL en función de su
cometido. La diferencia principal reside en que el DDL crea objetos en la
base de datos y sus efectos se pueden ver en el diccionario de la base de
datos; mientras que el DML es el que permite consultar, insertar,
modificar y eliminar la información almacenada en los objetos de la base
de datos. [6]
• DML:
✔ Un lenguaje de Manipulación de Datos (Data Manipulation Language
(DML)) es un lenguaje proporcionado por el sistema de gestión de base
de datos que permite a los usuarios de la misma llevar a cabo las tareas
de consulta o manipulación de los datos, organizados por el modelo de
datos adecuado.

El lenguaje de manipulación de datos más popular hoy día es SQL,


usado para recuperar y manipular datos en una base de datos relacional.
Otros ejemplos de DML son los usados por bases de datos IMS/DL1,
CODASYL u otras. [7]

• SENTENCIA SELECT:
✔ La selección sobre una tabla consiste en elegir un subconjunto de filas
que cumplan (o no) algunas condiciones determinadas. La sintaxis de
una sentencia de este tipo es la siguiente:
➢ SELECT */ <columna1, columna2,....>
FROM <nombre-tabla>
[WHERE <condición>?
[GROUP BY <columna1, columna2....>?
[HAVING <condición-selección-grupos>?
[ORDER BY <columna1 [DESC?, columna2 [DESC?...> ?
• SENTENCIA UPDATE:
✔ Actualiza valores de una o más columnas para un subconjunto de filas de
una tabla.
➢ UPDATE <nombre-tabla>
SET <columna1> = valor1 [, <columna2> = valor2...?
[WHERE <condición>?
✔ Actualiza los campos correspondientes junto con los valores que se le
asignen, en el subconjunto de filas que cumplan la condición de
selección. Si no se pone condición de selección, la actualización se da en
todas las filas de la tabla.
Si se desea actualizar a nulos, se asignará el valor NULL.

• SENTENCIA INSERT:
✔ Añade filas a una tabla. Posee varios formatos posibles:
➢ INSERT INTO <nombre-tabla> VALUES (<serie de valores>)
✔ El orden en el que se asignen los valores en la cláusula VALUES tiene
que coincidir con el orden en que se definieron las columnas en la
creación del objeto tabla, dado que los valores se asignan por
posicionamiento relativo.
➢ INSERT INTO <nombre-tabla> (<columna1>, <columna2>.....)
VALUES (<valor1>, <valor2>....)
✔ En este caso los valores se asignarán a cada una de las columnas
mencionadas por posicionamiento relativo, siendo necesario que por lo
menos se asignen valores a todas aquellas columnas que no admiten
valores nulos en la tabla.

• SENTENCIA INSERT CON MÚLTIPLES FILAS:


✔ Para insertar un subconjunto de filas de una tabla en otra se escribe una
sentencia INSERT con una SUBSELECT interna. Los formatos posibles
son:
➢ INSERT INTO <nombre-tabla> (<columna1>, <columna2>.....)
SELECT (<sentencia Select>)
✔ Asigna a las columnas los valores recuperados en la sentencia Select.
Inserta en la tabla todas las filas que se recuperen en la Select.
➢ INSERT INTO <nombre-tabla> SELECT * FROM <nombre-
tabla-fuente>
En este caso las estructuras de las tablas tienen que ser iguales.
[8]

• DDL: Lenguaje de Definición de Datos, Operaciones básicas.


✔ Las principales funcionalidades de SQL como lenguaje de definición
(DDL) son la creación, modificación y borrado de las tablas que
componen la base de datos, así como de los índices, vistas, sinónimos,
permisos, etc.

• Sentencia CREATE:
✔ Create es utilizado para crear una nueva base de datos, tabla, índice o un
query guardado. Los tipos de objetos que pueden ser creados son Tablas,
Índices, Usuarios y Bases de Datos.

• CREATE TABLE
✔ Considerado el comando CREATE mas común, el comando CREATE
TABLE. El uso típico es el siguiente:
Ejemplo:
CREATE [TEMP [ORAL]] TABLE [nombre tabla] ([definicion de columnas])
[parámetros de la tabla].
•Definición de Columnas:
✔ Una lista separada por comas que consiste en cualquiera de los siguientes
incisos:
Ejemplo:
[Nombre columna] [Tipo de dato] {NULL | NOT NULL} {opciones de columna}
•Definición de Llave Primaria:
Ejemplo:
PRIMARY KEY ([lista de columnas separadas por coma] )
•CONSTRAINTS:
Ejemplo:
{CONSTRAINT} [Definicion del constraint]
Por ejemplo, el comando para crear una tabla llamada "empleados" con unas columnas
de ejemplo sería el siguiente:
CREATE TABLE empleado (
Código INTEGER PRIMARY KEY,
Nombre CHAR (50) null,
Apellido CHAR (75) not null,
Fecha_nac DATE null
);

• Sentencias DROP:

✔ Drop: Se utiliza para destruir un objeto existente. Tal es el caso de una


base de datos, una tabla, índices o una vista.
Ejemplo:
DROP tipo_objeto nombre_objeto.
Por ejemplo, el comando para botar una tabla llamada empleados es el siguiente:
DROP TABLE empleados;
✔ La sentencia DROP es distinta de la sentencia DELETE. Por ejemplo, la
sentencia DELETE puede borrar un poco (o toda) de información de una
tabla, mientras que la sentencia DROP remueve toda la tabla de la base
de datos.

• Sentencias ALTER:

✔ Alter: Utilizado para modificar un objeto existente en la base de datos.


Ejemplo:
ALTER tipo_objeto nombre_objeto parámetros.
Por ejemplo: El comando para agregar una columna llamada "edad" a una tabla llamada
estudiante podría ser:
ALTER TABLE estudiante ADD edad INTEGER;
[9]

• Web Grafía

[1] http://www.alegsa.com.ar/Dic/sql.php
[2] http://www.cs.us.es/cursos/bd-2001/temas/sql_I.html
[3] http://diccionario.babylon.com/SQL

[4] http://www.pergaminovirtual.com.ar/definicion/SQL.html
[5] http://www.infor.uva.es/~jvegas/cursos/bd/sqlplus/sqlplus.html#terminologia
[6] http://www.infor.uva.es/~jvegas/cursos/bd/sqlplus/sqlplus.html#terminologia
[7] http://www.diclib.com/cgi-
bin/d1.cgi?l=es&base=es_wiki_10&page=showid&id=50789
[8] http://www.miliuco.net/docs/oracle_select.htm
[9] "El DDL, Lenguaje de Definición de Datos", Aulaclic S.L. Valencia España,
http://www.aulaclic.es/sql/t_8_1.htm
http://www.help400.es/asp/scripts/nwart.asp?Num=160&Pag=34&Tip=T

S-ar putea să vă placă și