Logotipo Notebook
Logotipo Tablet
Logo Ciberaula
Teléfono de Contacto
Otros Cursos de SQL Catalogo de Cursos

Cursos de SQL

fichaCursos relacionados



Formación Bonificada

ticket ciberaulaAcceso al curso las 24 hs. Todos
los días de
la semana

Modalidad Teleformacion Acceso 24 Horas

ticket ciberaulaDiploma acreditativo de FUNDAE

Diploma acreditado por FUNDAE

ticket ciberaulaAula virtual homologada por el SEPE

ticket ciberaulaNos ocupamos de toda la gestión de su bonificación

ticket ciberaulaDiploma acreditativo de CIBERAULA

Diploma acreditativo de Cursos de SQL online
700 cursos online

Valore esta página:

Votos: 3.8/5 (11311 votos)

Cursos de SQL online

Cursos de SQL online

Público Objetivo

 El Curso SQL on-line está dirigido a todas aquellas personas que trabajen con bases de datos y necesiten aprender el lenguaje estándar de acceso a las mismas. También permite a programadores especializados en Visual Basic, Delphi, ASP, PHP, Java, etc., comprender a fondo un lenguaje que deben utilizar siempre que acceden a bases de datos.

Duración del curso

La duración del Curso de SQL es de entre 30 y 60 horas, acreditadas en el Diploma del mismo.

Fecha de inicio:
Se puede determinar libremente, teniendo en cuenta que en cursos bonificados de formación contínua debe notificarse a FUNDAE con al menos 7 días naturales de antelación a la misma.

Objetivos

¿Qué es SQL?

 3SQL es el lenguaje estándar para el acceso a bases de datos relacionales. Se trata de un lenguaje creado a partir de un estándar pero que varía en función del sistema que lo utiliza. SQL permite gestionar, controlar y definir bases de datos.

¿En qué consiste el Curso de SQL de Ciberaula?

 El Curso de SQL le permitirá, principalmente, la realización de consultas a las bases de datos relacionales, aunque también abarcará la definición, control y gestión de datos. Nuestro Curso de SQL se realiza sobre Access, pero se explican las diferencias principales con otros gestores.

¿En qué podré emplear los conocimientos adquiridos en el Curso de SQL ?

 Con los conocimientos adquiridos en el Curso de SQL on-line podrá realizar las siguientes aplicaciones prácticas:

Conocimiento Aplicación Práctica
Bases de datos y SQL, herramientas informáticas necesarias en la emprea.
Almacenamiento masivo de cualquier tipo de datos informático. Bases de datos relacionales mediante SQL.
Instalación de un servidor SQL. Lenguaje SQL.
Instalar la plataforma SQL, introducirse en las sentencias SQL y hacer las primeras consultas a la base de datos del servidor.
SQL Server
Administración de SQL Server y trucos. Ventajas del SQL Server.
Sentencias SQL
Hacer inserciones o altas en la base de datos SQL, borrado de filas, modificaciones y acceder a la información de la base de datos a través de las consultas SQL.
Aplicaciones de SQL
Desarrollo de aplicaciones basadas en SQL, manipulando datos mediante consultas SQL en un entorno de programación.

Ventajas del Curso de SQL sobre cualquier tipo de manuales de SQL o tutoriales de SQL

 Los Cursos de SQL online de Ciberaula le permitirán profundizar en los conocimientos de esta materia gracias a las nuevas técnicas de e-learning que facilitan el aprendizaje, a diferencia de un simple tutorial de SQL en el que se hace más complicada la asimilación. Esta diferencia con otro tipo de cursos o con cualquier manual de SQL es particularmente notable en el caso de cursos personalizados, en los que el alumno recibe asistencia del tutor de Ciberaula durante todo el curso

 Modalidades

 Estos Cursos se imparte en modalidad online o de Teleformación (elearning) con asistencia de profesor, tanto para particulares como para empresas. Son cursos bonificables a través de la FUNDAE (antes Fundación tripartita) si se trata de trabajadores en plantilla. Ciberaula está autorizada por FUNDAE como entidad organizadora para ocuparse de la gestión de la bonificación. Estos cursos se imparte también en modalidad presencial o blearning (semipresencial) en Madrid y Barcelona.

 Bonificación

 Estos cursos puede ser bonificados al 100% para la empresa receptora, incluso aunque esta tenga un porcentaje de copago en razón de su número de empleados en plantilla. El coste de la formación se recuperará mediante descuento en el pago de los seguros sociales.

 Este descuento será aplicable libremente en cualquier mes del año posterior a la fecha en que haya finalizado la formación. Podrán bonificarse las matrículas de aquellos alumnos que realicen al menos el 75% del curso con éxito.


SQL

SQL (por sus siglas en inglés Structured Query Language; en español lenguaje de consulta estructurada) es un lenguaje específico del dominio que da acceso a un sistema de gestión de bases de datos relacionales que permite especificar diversos tipos de operaciones en ellos. Una de sus características es el manejo del álgebra y el cálculo relacional que permiten efectuar consultas con el fin de recuperar, de forma sencilla, información de bases de datos, así como hacer cambios en ellas.

Originalmente basado en el álgebra relacional y en el cálculo relacional, SQL consiste en un lenguaje de definición de datos, un lenguaje de manipulación de datos y un lenguaje de control de datos. El alcance de SQL incluye la inserción de datos, consultas, actualizaciones y borrado, la creación y modificación de esquemas y el control de acceso a los datos. También el SQL a veces se describe como un lenguaje declarativo, también incluye elementos procesales.

SQL fue uno de los primeros lenguajes comerciales para el modelo relacional de Edgar Frank Codd como se describió en su papel de 1970 El modelo relacional de datos para grandes bancos de datos compartidos. A pesar de no adherirse totalmente al modelo relacional descrito por Codd, pasó a ser el lenguaje de base de datos más usado.

SQL pasó a ser el estándar del Instituto Nacional Estadounidense de Estándares (ANSI) en 1986 y de la Organización Internacional de Normalización (ISO) en 1987. Desde entonces, el estándar ha sido revisado para incluir más características. A pesar de la existencia de ambos estándares, la mayoría de los códigos SQL no son completamente portables entre sistemas de bases de datos diferentes sin ajustes.

Orígenes y evolución

Los orígenes de SQL están ligados a las bases de datos de las pc o móvil aun a los de las bases de datos relacionales. En 1970 E. F. Codd propone el modelo relacional y asociado a este un sublenguaje de acceso a los datos basado en el cálculo de predicados. Basándose en estas ideas, los laboratorios de IBM definieron el lenguaje SEQUEL (Structured English Query Language) que más tarde fue ampliamente implementado por el sistema de gestión de bases de datos (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 producto comercial.

El SEQUEL terminó siendo el predecesor de SQL, que es una versión evolucionada del primero. SQL pasa a ser el lenguaje por excelencia de los diversos sistemas de gestión de bases de datos relacionales surgidos en los años siguientes y fue por fin estandarizado en 1986 por el ANSI, dando lugar a la primera versión estándar de este lenguaje, "SQL-86""SQL1". Al año siguiente este estándar es también adoptado por ISO.

Sin embargo, este primer estándar no cubría todas las necesidades de los desarrolladores e incluía funcionalidades de definición de almacenamiento que se consideró suprimirlas. Así que, en 1992, se lanzó un nuevo estándar ampliado y revisado de SQL llamado "SQL-92" o "SQL2".

En la actualidad SQL es el estándar de facto de la inmensa mayoría de los SGBD comerciales. Y, aunque la diversidad de añadidos particulares que incluyen las distintas implementaciones comerciales del lenguaje es amplia, el soporte al estándar SQL-92 es general y muy amplio.

Características generales de SQL

SQL es un lenguaje de acceso a bases de datos que explota la flexibilidad y potencia de los sistemas relacionales y permite así gran variedad de operaciones.

Es un lenguaje declarativo de "alto nivel" o "de no procedimiento" que, gracias a su fuerte base teórica y su orientación al manejo de conjuntos de registros —y no a registros individuales— permite una alta productividad en codificación y la orientación a objetos. De esta forma, una sola sentencia puede equivaler a uno o más programas que se utilizarían en un lenguaje de bajo nivel orientado a registros. SQL también tiene las siguientes características:

Lenguaje de definición de datos: El LDD de SQL proporciona comandos para la definición de esquemas de relación, borrado de relaciones y modificaciones de los esquemas de relación.

Lenguaje interactivo de manipulación de datos: El LMD de SQL incluye lenguajes de consultas basado tanto en álgebra relacional como en cálculo relacional de tuplas.

Integridad: El LDD de SQL incluye comandos para especificar las restricciones de integridad que deben cumplir los datos almacenados en la base de datos.

Tipos de datos

Algunos de los tipos de datos básicos de SQL son:

Varchar: Recibe cadena de palabras compuestas de letras, números y caracteres especiales.

Date: una fecha de calendario que contiene el año (de cuatro cifras), el mes y el día.

Time: La hora del día en horas minutos segundos (el valor predeterminado es 0).

Datetime: la combinación de Date y Time.

Optimización

Como ya se dijo antes, y suele ser común en los lenguajes de acceso a bases de datos de alto nivel, SQL es un lenguaje declarativo. O sea, que especifica qué es lo que se quiere y no cómo conseguirlo, por lo que una sentencia no establece explícitamente un orden de ejecución.

El orden de ejecución interno de una sentencia puede afectar seriamente a la eficiencia del SGBD, por lo que se hace necesario que éste lleve a cabo una optimización antes de su ejecución. Muchas veces, el uso de índices acelera una instrucción de consulta, pero ralentiza la actualización de los datos. Dependiendo del uso de la aplicación, se priorizará el acceso indexado o una rápida actualización de la información. La optimización difiere sensiblemente en cada motor de base de datos y depende de muchos factores.

Existe una ampliación de SQL conocida como FSQL (Fuzzy SQL, SQL difuso) que permite el acceso a bases de datos difusas, usando la lógica difusa. Este lenguaje ha sido implementado a nivel experimental y está evolucionando rápidamente.

Lenguaje de definición de datos (DDL)

El lenguaje de definición de datos (en inglés Data Definition Language, o DDL), es el que se encarga de la modificación de la estructura de los objetos de la base de datos. Incluye órdenes para modificar, borrar o definir las tablas en las que se almacenan los datos de la base de datos. Existen cuatro operaciones básicas: CREATE, ALTER, DROP y TRUNCATE.

CREATE | CREAR

Este comando permite crear objetos de datos, como nuevas bases de datos, tablas, vistas y procedimientos almacenados.

Ejemplo (crear una tabla)

CREATE TABLE 'CUSTOMERS';

ALTER | MODIFICAR

Este comando permite modificar la estructura de una tabla u objeto. Se pueden agregar/quitar campos a una tabla, modificar el tipo de un campo, agregar/quitar índices a una tabla, modificar un trigger, etc.

Ejemplo (agregar columna a una tabla)

ALTER TABLE 'ALUMNOS' ADD EDAD INT UNSIGNED;

DROP | ELIMINAR

Este comando elimina un objeto de la base de datos. Puede ser una tabla, vista, índice, trigger, función, procedimiento o cualquier objeto que el motor de la base de datos soporte. Se puede
combinar con la sentencia ALTER.

Ejemplo

DROP TABLE 'ALUMNOS';

TRUNCATE | BORRAR TABLA

Este comando trunca todo el contenido de una tabla. La ventaja sobre el comando DROP, es que si se quiere borrar todo el contenido de la tabla, es mucho más rápido, especialmente si la tabla es muy grande. La desventaja es que TRUNCATE sólo sirve cuando se quiere eliminar absolutamente todos los registros, ya que no se permite la cláusula WHERE. Si bien, en un principio, esta sentencia parecería ser DML (Lenguaje de Manipulación de Datos), es en realidad una DDL, ya que internamente, el comando TRUNCATE borra la tabla y la vuelve a crear y no ejecuta ninguna transacción

Ejemplo

TRUNCATE TABLE 'NOMBRE_TABLA';

Lenguaje de manipulación de datos DML (Data Manipulation Language)

Un lenguaje de manipulación de datos (Data Manipulation Language, o DML en inglés) es un lenguaje proporcionado por el sistema de gestión de base de datos que permite a los usuarios 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.

SELECT | SELECCIONAR

La sentencia SELECT nos permite consultar los datos almacenados en una tabla de la base de datos.

Forma básica

SELECT [ALL | DISTINCT ]

< nombre_campo > [{,< nombre_campo >}]
FROM < nombre_tabla >|< nombre_vista >
[{,< nombre_tabla >|< nombre_vista >}]
[WHERE < condición > [{ AND|OR < condición >}]]
[GROUP BY < nombre_campo > [{,< nombre_campo >}]]
[HAVING < condición >[{ AND|OR < condición >}]]
[ORDER BY < nombre_campo >|< indice_campo > [ASC | DESC]
[{,< nombre_campo >|< indice_campo > [ASC | DESC ]}]]

SELECT Palabra clave que indica que la sentencia de SQL que queremos ejecutar es de selección.

ALL Indica que queremos seleccionar todos los valores. Es el valor por defecto y no suele especificarse casi nunca.

DISTINCT Indica que queremos seleccionar sólo los valores distintos.

FROM Indica la tabla (o tablas) desde la que queremos recuperar los datos. En el caso de que exista más de una tabla se denomina a la consulta "consulta combinada" o "join". En las consultas combinadas es necesario aplicar una condición de combinación a través de una cláusula WHERE.

WHERE Especifica una condición que debe cumplirse para que los datos sean devueltos por la consulta. Admite los operadores lógicos AND y OR.

GROUP BY Especifica la agrupación que se da a los datos. Se usa siempre en combinación con funciones agregadas.

HAVING Especifica una condición que debe cumplirse para que los datos sean devueltos por la consulta. Su funcionamiento es similar al de WHERE pero aplicado al conjunto de resultados devueltos por la consulta. Debe aplicarse siempre junto a GROUP BY y la condición debe estar referida a los campos contenidos en ella.

ORDER BY Presenta el resultado ordenado por las columnas indicadas. El orden puede expresarse con ASC (orden ascendente) y DESC (orden descendente). El valor predeterminado es ASC.

Ejemplo

Para formular una consulta a la tabla Coches y recuperar los campos matricula, marca, modelo, color, numero_kilometros, num_plazas debemos ejecutar la siguiente consulta. Los datos serán devueltos ordenados por marca y por modelo en orden ascendente, de menor a mayor. La palabra clave FROM indica que los datos serán recuperados de la tabla Coches.

SELECT matricula, marca, modelo, color, numero_kilometros, num_plazas

FROM Coches

ORDER BY marca,modelo;

Ejemplo de Consulta simplificada a través de un comodín de Campos (*):

El uso del asterisco indica que queremos que la consulta devuelva todos los campos que existen en la tabla y los datos serán devueltos ordenados por marca y por modelo.

SELECT * FROM Coches ORDER BY marca, modelo;

Cláusula WHERE

La cláusula WHERE es la instrucción que nos permite filtrar el resultado de una sentencia SELECT. Habitualmente no deseamos obtener toda la información existente en la tabla, sino que queremos obtener sólo la información que nos resulte útil en ese momento. La cláusula WHERE filtra los datos antes de ser devueltos por la consulta. Cuando en la Cláusula WHERE queremos incluir un tipo texto, debemos incluir el valor entre comillas simples.

Ejemplos:

En nuestro ejemplo, se desea consultar un coche en concreto, para esto se agregó una cláusula WHERE. Esta cláusula especifica una o varias condiciones que deben cumplirse para que la sentencia SELECT devuelva los datos. En este caso la consulta devolverá sólo los datos del coche con matrícula para que la consulta devuelva sólo los datos del coche con matrícula MF-234-ZD o bien la
matrícula FK-938-ZL . Se puede utilizar la cláusula WHERE solamente, ó en combinación con tantas condiciones como queramos.

SELECT matricula, marca, modelo, color, numero_kilometros, num_plazas

FROM Coches

WHERE matricula = 'MF-234-ZD'

OR matricula = 'FK-938-ZL' ;

SELECT matricula,marca, modelo, color, numero_kilometros, num_plazas

FROM coches

WHERE NOT matricula = 'MF-234-ZD';

La Siguiente consulta utiliza la condicional DISTINCT, la cual nos devolverá todos los valores distintos formados por los Campos Marca y Modelo. de la tabla coches.

SELECT DISTINCT marca, modelo FROM coches;

Cláusula ORDER BY

La cláusula ORDER BY es la instrucción que nos permite especificar el orden en el que serán devueltos los datos. Podemos especificar la ordenación ascendente o descendente a través de las palabras clave ASC y DESC. La ordenación depende del tipo de datos que este definido en la columna, de forma que un campo numérico será ordenado como tal, y un alfanumérico se ordenará de la A a la Z, aunque su contenido sea numérico. El valor predeterminado es ASC si no se especifica al hacer la consulta.

Ejemplos:
'SELECT' matricula,
marca,
modelo,
color,
numero_kilometros,
num_plazas
'FROM' coches

'ORDER BY' marca 'ASC', modelo 'DESC'; Este ejemplo, selecciona todos los campos matricula, marca, modelo, color, numero_kilometros y num_plazas de la tabla coches, ordenándolos por los campos marca y modelo, marca en forma ascendente y modelo en forma descendente.

SELECT matricula,
marca,
modelo,
color,
numero_kilometros, num_plazas
FROM coches

ORDER BY 2;

Este ejemplo, selecciona todos los campos matrícula, marca, modelo, color, numero_kilometros y num_plazas de la tabla coches, ordenándolos por el campo marca, ya que aparece en segundo lugar dentro de la lista de campos que componen la SELECT.

SUBCONSULTAS

Una subconsulta es una sentencia SELECT que está embebida en una cláusula de otra sentencia SQL.

Las subconsultas pueden resultar útiles si necesitas seleccionar filas de una tabla con una condición que depende de los datos de la propia tabla o de otra tabla.

La subconsulta (consulta interna), se ejecuta antes de la consulta principal; el resultado de la subconsulta es utilizado por la consulta principal (consulta externa).

SELECT c.matricula, c.modelo
FROM coches c
WHERE c.matricula IN
(
SELECT m.matricula
FROM multas m
WHERE m.importe > 100
);

En este ejemplo, se seleccionan las matriculas y los modelos de los coches cuyas multas superan los u$s 100.

INSERT | INSERTAR

Una sentencia INSERT de SQL agrega uno o más registros a una (y sólo una) tabla en una base de datos relacional.

Forma básica

INSERT INTO 'tablatura' ('columna1',['columna2,... '])
VALUES ('valor1', ['valor2,...'])

O también se puede utilizar como:

INSERT INTO tablatura VALUES ('valor1','valor2')

Las cantidades de columnas y valores deben ser iguales. Si una columna no se especifica, le será asignado el valor por omisión. Los valores especificados (o implícitos) por la sentencia INSERT deberán satisfacer todas las restricciones aplicables. Si ocurre un error de sintaxis o si alguna de las restricciones es violada, no se agrega la fila y se devuelve un error.

Ejemplo
INSERT INTO agenda_telefonica (nombre, numero)
VALUES ('Roberto Jeldrez', 4886850);

Cuando se especifican todos los valores de una tabla, se puede utilizar la sentencia acortada:

INSERT INTO nombreTabla VALUES ('valor1', ['valor2,...'])

Ejemplo (asumiendo que 'nombre' y 'número' son las únicas columnas de la tabla 'agenda_telefonica'):

INSERT INTO agenda_telefonica

VALUES ('Jhonny Aguilar', 080473968)

Formas avanzadas

Una característica de SQL (desde SQL-92) es el uso de constructores de filas para insertar múltiples filas a la vez, con una sola sentencia SQL:
INSERT INTO ''tabla'' (''columna1'', [''columna2,... ''])
VALUES (''valor1a'', [''valor1b,...'']),
(''value2a'', [''value2b,...'']),...;

Esta característica es soportada por DB2, PostgreSQL (desde la versión 8.2), MySQL, y H2.

Ejemplo (asumiendo que 'nombre' y 'número' son las únicas columnas en la tabla 'agenda_telefonica'):

INSERT INTO agenda_telefonica VALUES ('Roberto Fernández', '4886850'), ('Alejandro Sosa', '4556550');

Que podía haber sido realizado por las sentencias

INSERT INTO agenda_telefonica VALUES ('Roberto Fernández', '4886850');

INSERT INTO agenda_telefonica VALUES ('Alejandro Sosa', '4556550');

Notar que las sentencias separadas pueden tener semántica diferente (especialmente con respecto a los triggers), y puede tener diferente rendimiento que la sentencia de inserción múltiple.

Para insertar varias filas en MS SQL puede utilizar esa construcción:

INSERT INTO phone_book

SELECT 'John Doe', '555-1212'

UNION ALL

SELECT 'Peter Doe', '555-2323';

Tenga en cuenta que no se trata de una sentencia SQL válida de acuerdo con el estándar SQL (SQL: 2003), debido a la cláusula subselect incompleta.

Para hacer lo mismo en Oracle se usa la Tabla DUAL, siempre que se trate de solo una simple fila:

INSERT INTO phone_book

SELECT 'John Doe', '555-1212' FROM DUAL

UNION ALL

SELECT 'Peter Doe','555-2323' FROM DUAL

Una implementación conforme al estándar de esta lógica se muestra el siguiente ejemplo, o como se muestra arriba (no aplica en Oracle):

INSERT INTO phone_book

SELECT 'John Doe', '555-1212' FROM LATERAL ( VALUES (1) ) AS t(c)

UNION ALL

SELECT 'Peter Doe','555-2323' FROM LATERAL ( VALUES (1) ) AS t(c)

Copia de filas de otras tablas

Un INSERT también puede utilizarse para recuperar datos de otros, modificarla si es necesario e insertarla directamente en la tabla. Todo esto se hace en una sola sentencia SQL que no implica ningún procesamiento intermedio en la aplicación cliente. Un SUBSELECT se utiliza en lugar de la cláusula VALUES. El SUBSELECT puede contener JOIN, llamadas a funciones, y puede incluso consultar en la misma TABLA los datos que se inserta. Lógicamente, el SELECT se evalúa antes que la operación INSERT esté iniciada. Un ejemplo se da a continuación.

INSERT INTO phone_book2
SELECT *
FROM phone_book
WHERE name IN ('John Doe', 'Peter Doe')

Una variación es necesaria cuando algunos de los datos de la tabla fuente se está insertando en la nueva tabla, pero no todo el registro. (O cuando los esquemas de las tablas no son iguales.)

INSERT INTO phone_book2 ( [name], [phoneNumber] )
SELECT [name], [phoneNumber]
FROM phone_book
WHERE name IN ('John Doe', 'Peter Doe')

El SELECT produce una tabla (temporal), y el esquema de la tabla temporal debe coincidir con el esquema de la tabla donde los datos son insertados.

UPDATE

Una sentencia UPDATE de SQL es utilizada para modificar los valores de un conjunto de registros existentes en una tabla.

Ejemplo

UPDATE My_table SET field1 = 'updated value asd' WHERE field2 = 'N';

DELETE

Una sentencia DELETE de SQL borra uno o más registros existentes en una tabla.

Forma básica

DELETE FROM tabla WHERE columna1 = 'valor1';

Ejemplo

DELETE FROM My_table WHERE field2 = 'N';

Recuperación de clave

Los diseñadores de base de datos que usan una clave suplente como la clave principal para cada tabla, se ejecutará en el ocasional escenario en el que es necesario recuperar automáticamente la base de datos, generando una clave primaria de una sentencia SQL INSERT para su uso en otras sentencias SQL. La mayoría de los sistemas no permiten sentencias SQL INSERT para retornar fila de datos. Por lo tanto, se hace necesario aplicar una solución en tales escenarios.

Implementaciones comunes incluyen:

Utilizando un procedimiento almacenado específico de base de datos que genera la clave suplente, realice la operación INSERT, y finalmente devuelve la clave generada.

Utilizando una sentencia SELECT especifica de base de datos, sobre una tabla temporal que contiene la última fila insertada. DB2 implementa esta característica de la siguiente manera:

SELECT * FROM NEW TABLE ( INSERT INTO phone_book VALUES ( 'Cristobal Jeldrez','0426.817.10.30' ) ) AS t

Utilizando una sentencia SELECT después de la sentencia INSERT con función específica de base de datos, que devuelve la clave primaria generada por el registro insertado más recientemente.

Utilizando una combinación única de elementos del original SQL INSERT en una posterior sentencia SELECT.

Utilizando un GUID en la sentencia SQL INSERT y la recupera en una sentencia SELECT.

Utilizando la función de PHP mysql_insert_id() de MySQL después de la sentencia INSERT.

Utilizando un INSERT con la cláusula RETURNING para Oracle, que sólo se puede utilizar dentro de un PL/SQL bloque, en el caso de PostgreSQL se puede usar también tanto con SQL como con PL/SQL.

INSERT INTO phone_book VALUES ( 'Cristobal Jeldrez','0426.817.10.30' )

RETURNING phone_book_id INTO v_pb_id

En el caso de MS SQL se puede utilizar la siguiente instrucción:

Set NoCount On;

INSERT INTO phone_book VALUES ( 'Cristobal Jeldrez','0426.817.10.30' );

Select @@Identity as ID

Disparadores

Los disparadores, también conocidos como desencadenantes (triggers en inglés) son definidos sobre la tabla en la que opera la sentencia INSERT, y son evaluados en el contexto de la operación. Los desencadenantes BEFORE INSERT permiten la modificación de los valores que se insertarán en la tabla. Los desencadenantes AFTER INSERT no puede modificar los datos de ahora en adelante, pero se puede utilizar para iniciar acciones en otras tablas, por ejemplo para aplicar mecanismos de auditoría Excel.

Sistemas de gestión de base de datos

Los sistemas de gestión de base de datos con soporte SQL más utilizados son, por orden alfabético:

  • DB2
  • Firebird
  • HSQL
  • Informix
  • Interbase
  • MariaDB
  • Microsoft SQL Server
  • MySQL
  • Oracle
  • PostgreSQL
  • PervasiveSQL
  • SQLite
  • Sybase ASE

Interoperabilidad

Los lenguajes de consultas de los diferentes sistemas de gestión de bases de datos son incompatibles entre ellos y no necesariamente siguen completamente el estándar. En particular, la sintaxis de fecha y tiempo, la concatenación de cadenas, nulas, y la comparación de textos en cuanto al tratamiento de mayúsculas y minúsculas varían de un proveedor a otro. Una excepción particular es PostgreSQL, que se esfuerza por lograr el cumplimiento del estándar.

Las implementaciones populares de SQL omiten comúnmente soporte para funciones básicas de SQL estándar, como la de los tipos de dato DATE o TIME. Es el caso del manejador de bases de datos de Oracle (cuyo tipo DATE se comporta como DATETIME, y carece de un tipo TIME)7 y MS SQL Server (antes de la versión de 2008). Como resultado, el código SQL rara vez puede ser portado entre los sistemas de base de datos sin modificaciones.

Hay varias razones para esta falta de portabilidad entre sistemas de bases de datos:

La complejidad y el tamaño del estándar SQL conlleva a que la mayoría de las implementaciones de SQL no sean compatibles con la norma completa.

La norma no especifica el comportamiento de la base de datos en varias áreas importantes (por ejemplo, índices, almacenamiento de archivos, etc.), dejando a las implementaciones decidir cómo comportarse.

El estándar SQL especifica con precisión la sintaxis que un sistema de base de datos conforme debe implementar. Sin embargo, no está tan bien definida la especificación en el estándar de la semántica de las construcciones del lenguaje, lo que lleva a ambigüedad.

Muchos proveedores de bases de datos tienen grandes bases de clientes existentes, por lo que introducir cambios para adaptarse el estándar podría producir incompatibilidades en las instalaciones de los usuarios y el proveedor puede no estar dispuesto a abandonar la compatibilidad con versiones anteriores.

Hay poco incentivo comercial para que un proveedor facilite a los usuarios el cambiar de proveedor de bases de datos.

Los usuarios que evalúan el software de base de datos tienden a valorar más otros factores tales como el rendimiento más alto en sus prioridades sobre las conformidades al estándar.

Novedades sobre SQL



Publicado el 23 de abril del 2024

Por Santamaria

Ventajas y Aplicaciones para Desarrolladores y Analistas

Ventajas y Aplicaciones para Desarrolladores y Analistas

Descubre las ventajas de aprender y usar SQL en entornos online. En este artículo, exploraremos las razones por las cuales el uso de plataformas online para practicar y ejecutar código SQL se ha vuelto tan popular. Desde el acceso instantáneo a herramientas hasta la capacidad de trabajar desde cualquier lugar, el mundo online ofrece una gama de beneficios para los desarrolladores y analistas de datos.

Uno de los principales beneficios de aprender SQL online es la disponibilidad de recursos educativos y tutoriales que facilitan la curva de aprendizaje. Con acceso a bases de datos compartidas y entornos de práctica, los usuarios pueden aplicar y probar sus conocimientos en tiempo real. Además, muchas plataformas online ofrecen características avanzadas como análisis de consultas y visualización de datos para ayudar a los estudiantes y profesionales a entender mejor sus resultados.

En este artículo, también examinaremos cómo el uso de SQL online facilita la colaboración y el trabajo en equipo. A través de plataformas basadas en la nube, los equipos pueden compartir consultas y bases de datos, permitiendo un flujo de trabajo más eficiente y la posibilidad de trabajar con colegas de todo el mundo. El entorno online también ofrece herramientas de seguridad avanzadas para proteger datos sensibles, brindando tranquilidad a los usuarios y empresas que confían en este enfoque moderno para sus necesidades de SQL.

Publicado el 13 de abril del 2024

Por Santamaria

Aprende y Practica a tu Propio Ritmo

Descubre la conveniencia y versatilidad de aprender SQL en línea con esta guía completa. En la era digital, la demanda de habilidades en SQL está en aumento, y aprender en línea ofrece flexibilidad y acceso instantáneo a recursos educativos.

Con cursos en línea, tutoriales y plataformas interactivas, aprender SQL nunca ha sido más accesible. Los estudiantes pueden dominar las consultas, la manipulación de datos y la gestión de bases de datos desde la comodidad de su hogar. La disponibilidad de entornos de práctica en línea permite a los usuarios poner en práctica sus habilidades en un entorno realista.

Ya sea que estés buscando mejorar tus habilidades técnicas para avanzar en tu carrera o simplemente interesado en aprender un nuevo lenguaje de programación, estudiar SQL en línea te brinda la oportunidad de adquirir habilidades valiosas en tu propio tiempo y ritmo. Prepárate para aprovechar las oportunidades profesionales que ofrece el dominio de SQL en el mundo digital actual.

Publicado el 17 de marzo del 2024

Por Santamaria

Desarrolla tus Habilidades con Cursos de SQL Online

Implicaciones de ChatGPT en la Eficiencia de Equipos de Trabajo

Los cursos de SQL online ofrecen una oportunidad invaluable para aquellos que desean dominar este lenguaje de programación vital en el mundo de la gestión de bases de datos. Estos cursos proporcionan una forma conveniente y flexible de aprender, permitiendo a los estudiantes avanzar a su propio ritmo desde cualquier ubicación.

Al inscribirse en un curso de SQL online, los participantes pueden acceder a contenido de alta calidad impartido por expertos en el campo. Desde los conceptos básicos hasta técnicas avanzadas, estos cursos cubren una amplia gama de temas para garantizar una comprensión integral de SQL y su aplicación en entornos del mundo real.

Con la demanda de habilidades en SQL en constante aumento, completar un curso de SQL online puede abrir nuevas oportunidades profesionales en áreas como análisis de datos, desarrollo de software y administración de bases de datos. Además, muchos de estos cursos ofrecen certificaciones reconocidas que pueden mejorar aún más el perfil de un individuo en el mercado laboral.

Publicado el 16 de febrero del 2024

Por Mario Madrid

Introducción a SQL: Fundamentos para Principiantes

Comenzar a explorar el mundo de las bases de datos puede ser intimidante, pero con una sólida introducción a SQL, los principiantes pueden rápidamente sentirse cómodos y competentes. SQL, que significa Lenguaje de Consulta Estructurada (Structured Query Language), es el estándar de oro para la manipulación y consulta de datos en bases de datos relacionales. Aprender SQL no solo abre las puertas a la gestión efectiva de datos, sino que también es una habilidad crítica en campos como el desarrollo de software, la ciencia de datos y la inteligencia de negocio.

Los fundamentos de SQL comienzan con entender cómo las bases de datos almacenan información en tablas, compuestas por filas y columnas. Los usuarios aprenden a realizar consultas para recuperar datos específicos, utilizar comandos como SELECT, INSERT, UPDATE, y DELETE para manipular esos datos, y comprender la importancia de la clave primaria en la relación entre tablas. Estas habilidades fundamentales forman la base sobre la cual se pueden construir operaciones más complejas, como las consultas de múltiples tablas y la aplicación de filtros avanzados.

A medida que los principiantes avanzan en su aprendizaje de SQL, descubrirán cómo esta poderosa herramienta puede ayudar a analizar grandes volúmenes de datos, realizar tareas de mantenimiento de bases de datos y optimizar el rendimiento de las consultas. La capacidad de escribir consultas eficientes y comprender los resultados es esencial para tomar decisiones basadas en datos. A través de una introducción práctica a SQL, incluso aquellos sin experiencia previa en programación pueden empezar a utilizar este lenguaje versátil para acceder y manipular datos de manera eficaz, sentando las bases para una carrera en tecnología de la información o análisis de datos.

contacto_express

Respondemos en aproximadamente 3 horas promedio en días laborables.

Nombre:

Email:

Comentario:

Novedades Curso de SQL Online


Nuestra Sede

Ciberaula

Dirección:
Paseo de la Castellana 91, Planta 4,
Madrid, MAD 280016
España
Teléfono de Contacto: 915303387
Email: