0% encontró este documento útil (0 votos)
35 vistas

Consultas Basicas SQL

Este documento describe los diferentes tipos de lenguajes de consulta, incluyendo lenguajes teóricos como el álgebra relacional y lenguajes comerciales como SQL. Luego se enfoca en SQL, describiéndolo como un lenguaje estándar para bases de datos relacionales y explicando sus sublenguajes DDL, DCL y DML. Finalmente, explica los componentes básicos de las consultas SQL como seleccionar, filtrar y ordenar datos.

Cargado por

svidart
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
35 vistas

Consultas Basicas SQL

Este documento describe los diferentes tipos de lenguajes de consulta, incluyendo lenguajes teóricos como el álgebra relacional y lenguajes comerciales como SQL. Luego se enfoca en SQL, describiéndolo como un lenguaje estándar para bases de datos relacionales y explicando sus sublenguajes DDL, DCL y DML. Finalmente, explica los componentes básicos de las consultas SQL como seleccionar, filtrar y ordenar datos.

Cargado por

svidart
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
Está en la página 1/ 31

Lenguajes de Consulta

Antes de comenzar a trabajar con el lenguaje de consulta SQL, se verá qué es un lenguaje de consulta y
qué tipos de lenguajes de consulta existen.
Los lenguajes de consulta permiten obtener determinada información sobre los datos almacenados.
Se dividen en dos tipos: lenguajes teóricos y lenguajes comerciales.

● Definición:
Permiten representar las consultas en forma concisa. En ellos se basan los
lenguajes comerciales y son en definitiva quienes definen cómo se deben
Lenguajes teóricos: formular las consultas
● Ejemplo:

Álgebra Relacional

● Definición:
Lenguajes que están implementados y se utilizan en diferentes paquetes de
software.
Lenguajes comerciales:
● Ejemplo:
S.Q.L (Structured Query Language)

SQL
SQL (Structured query language), lenguaje de consulta estructurado, es un lenguaje para el acceso a
bases de datos relacionales. Actualmente se ha convertido en un estándar de lenguaje de bases de datos, y
la mayoría de los sistemas de bases de datos lo soportan, desde sistemas para computadoras personales,
hasta grandes computadoras.
Por supuesto, a partir del estándar cada sistema ha desarrollado su propio SQL que puede variar de un
sistema a otro, pero con cambios que no suponen ninguna complicación para alguien que conozca un
SQL concreto.
SQL permite realizar consultas a la base de datos y además realiza funciones de definición, control y
gestión de la base de datos. Las sentencias SQL se clasifican según su finalidad dando origen a tres
‘lenguajes’ o mejor dicho sub-lenguajes:

DDL Lenguaje de definición de datos


Data Definition Incluye órdenes para definir, modificar o borrar las tablas en las que se almacenan
Language los datos y las relaciones entre estas. (Es el que más varia de un sistema a otro)

Lenguaje de control de datos


DCL Contiene elementos útiles para trabajar en un entorno multiusuario, en el que es
importante la protección de los datos, la seguridad de las tablas y el
Data Control
establecimiento de restricciones en el acceso, así como elementos para coordinar
Language
la forma de compartir datos por parte de usuarios concurrentes, asegurando que
no interfieren unos con otros.

Lenguaje de manipulación de datos


DML Permite recuperar los datos almacenados en la base de datos y también incluye
Data Manipulation órdenes para permitir al usuario actualizar la base de datos añadiendo nuevos
Language datos, suprimiendo datos antiguos o modificando datos previamente almacenados.

SQL es un lenguaje de base de datos completo; cuenta con enunciados de


definición, consulta y actualización de datos.
Observación
Componentes de SQL
El lenguaje SQL está compuesto por instrucciones, cláusulas, operadores y funciones de agregado. Estos
elementos se combinan en sentencias con el fin de crear, actualizar y manipular las bases de datos.
Una sentencia SQL es como una oración (escrita en inglés) con la que se indica lo que se desea obtener
y de dónde obtenerlo.
Todas las sentencias empiezan con un verbo (palabra reservada que indica la acción a realizar), seguido
del resto de las cláusulas, algunas obligatorias y otras opcionales que completan la frase.
Todas las sentencias respetan una determinada sintaxis, para que se puedan ejecutar correctamente. Con
el fin de explicar esa sintaxis se recurre al siguiente ejemplo:

SELECT Columna FROM Tabla WHERE Condición

Las palabras que Son palabras reservadas.


aparecen en
mayúsculas En el ejemplo anterior, SELECT, FROM, WHERE, son palabras reservadas.
Las palabras en Son variables que el usuario deberá sustituir por un dato concreto.
cursiva En el ejemplo, columna, tabla y condición, son variables.

Interpretación del ejemplo de la figura anterior

Las sentencias comienzan siempre con una instrucción, en el ejemplo anterior la instrucción es SELECT,
a continuación un nombre de columna, o varios separados por comas, luego la palabra FROM y una
expresión-tabla. Por último de forma opcional se puede incluir la cláusula WHERE con una
condición-de-búsqueda.
Es importante destacar que la sentencia anterior es simplemente un ejemplo,
existen otras variantes de sentencias SQL, que se verán más adelante y que
permiten llevar adelante distintas actividades sobre una base de datos.
Observación

Ejemplo

A continuación se muestran, a modo de ejemplo, distintas sentencias SQL, con el fin de comenzar a
familiarizarse con la sintaxis de este lenguaje.

Dada una tabla de nombre CLIENTES (C.I., Nombre, Apellido, Dirección, Teléfono), se tienen las
siguientes consultas escritas en SQL.

SELECT Nombre, Apellido, Dirección FROM Clientes

SELECT Nombre FROM Clientes

SELECT Nombre, Apellido FROM Clientes WHERE Apellido = 'Pérez'


Tipos de Consulta
Como ya se explicó las sentencias SQL permiten realizar consultas sobre una base de datos. Estas
consultas se pueden clasificar en:

Las consultas de selección se utilizan para obtener un conjunto de registros de la


base de datos.

El conjunto de registros (recordset) está compuesto por una lista de campos que
Consultas de pertenecen a una lista de tablas, opcionalmente se puede filtrar y ordenar el
Selección resultado de la consulta.

La instrucción que se utiliza para realizar dichas consultas es SELECT

Las consultas de acción no seleccionan registros de la base de datos para


mostrarlos sino que que están encargadas de realizar cambios sobre los registros,
tales como: añadir, borrar y modificar.
Consultas de
Acción
Las instrucciones que se utilizan para realizar dichas acciones son: INSERT
INTO, DELETE, UPDATE.
Consultas Básicas
En principio se trabajará con SQL para la generación de consultas de selección.
Para ello se utilizará la instrucción SELECT que permite recuperar datos de una o de varias tablas de la
base de datos.
El resultado de una consulta de selección es una tabla lógica. Se denomina así ya que la tabla obtenida no
queda guardada en un dispositivo de almacenamiento como el disco duro, disquete, CD, etc., sino que
está almacenada en la memoria y cada vez que se ejecuta la consulta, la tabla se vuelve a generar.
La sentencia SELECT forma parte del DML (lenguaje de manipulación de datos) y es la más potente de
las sentencias del lenguaje SQL.
Se verá cómo:
● generar consultas basadas en una y en varias tablas.
● seleccionar columnas de una tabla
● seleccionar filas de una tabla
● obtener los registros o filas ordenados por distintos criterios.

Consultas sobre una sola tabla

La sintaxis básica de una consulta de selección simple es la siguiente:

SELECT Campos FROM tabla

En donde Campos es el nombre del o de los campos (separados por coma) que se desean recuperar y
Tabla es el nombre de la tabla sobre la que se realizará la consulta.
Para generar una consulta que devuelva todos los campos de una tabla, se puede
utilizar el asterisco (*) en lugar de escribir los nombres de todos y cada uno de los
campos que contiene la tabla.
Observación La ventaja de utilizar el (*) es que si en algún momento se agregan o quitan
campos de la estructura de la tabla, no se deberá modificar la sintaxis de la
consulta para obtener el resultado deseado.
SELECT * FROM tabla

Ejemplo:

Nota: Para comprobar el funcionamiento de las sentencias SQL que se muestran en los ejemplos, se
puede utilizar la base de datos VIDEO CLUB.MDB, que se encuentra en la carpeta EJERCICIOS
ACCESS. Utilizar la ventana de consultas de Access, en vista SQL, para escribir y ejecutar las
sentencias.

Dada la tabla Socios, la


siguiente consulta
devuelve los campos
Apellido y Teléfono de
todos los registros
SELECT Apellido, Teléfono
FROM Socios

El resultado de la consulta sería el que se muestra en la siguiente figura:

Si en la tabla origen de datos, hay algún campo cuyo nombre incluye espacios en blanco (aunque esto no
es aconsejable), por ejemplo "Tipo de Cuponera", cuando se escriba el nombre del campo en la
sentencia SQL, se lo debe hacer entre corchetes [nombre_campo].

SELECT Apellido, [Tipo de Cuponera]


FROM Socios
También se puede utilizar la siguiente sintaxis al generar una consulta de selección.
Se agrega el nombre de la tabla delante del nombre de los campos o delante del
asterisco y separado por un punto (.)

SELECT Socios.* FROM Socios

Observación SELECT Socios.Apellido, Socios.Nombre FROM Socios


Esta sintaxis se debe utilizar de forma obligatoria cuando se genera una consulta en
la que se van a obtener datos de más de una tabla, como se verá más adelante.
Ordenar registros
Otra posibilidad ofrecida por las consultas de selección es especificar el orden en que se desean recuperar
los registros de las tablas.
Para ello se debe incluir en la sentencia SQL, la cláusula ORDER BY y el nombre de uno o varios
campos.

Ejemplo
Nota: Para comprobar el funcionamiento de las sentencias SQL que se muestran en los ejemplos, se
puede utilizar la base de datos VIDEO CLUB.MDB, que se encuentra en la carpeta EJERCICIOS
ACCESS. Utilizar la ventana de consultas de Access, en vista SQL, para escribir y ejecutar las
sentencias.
SELECT Apellido, Teléfono, FechaIngreso
FROM Socios
ORDER BY Apellido

La consulta anterior devuelve los campos Apellido, Teléfono y FechaIngreso de la tabla Socios,
ordenados por el campo Apellido, en forma ascendente.
Los campos se ordenan, de menor a mayor si el campo es numérico, por orden alfabético si el campo es
de tipo texto, de anterior a posterior si el campo es de tipo fecha/hora, etc.

Se pueden ordenar los registros por más de un campo

Ejemplo
SELECT Apellido, Teléfono, FechaIngreso
FROM Socios
ORDER BY Apellido, FechaIngreso

Esta consulta devuelve los datos ordenados, en principio por Apellido y si hay algún apellido repetido,
aparecen ordenados los datos también por FechaIngreso.

Orden Ascendente o Descendente

También se puede especificar si los datos resultantes de la consulta se desean ordenados en forma
ascendente o descendente:
● ascendente utilizando la cláusula ASC (valor por defecto)

● descendente utilizando la cláusula DESC


Ejemplo
SELECT Apellido, Teléfono, FechaIngreso
FROM Socios
ORDER BY Apellido ASC, FechaIngreso DESC

Esta consulta devuelve los registros ordenados alfabéticamente por Apellido en orden ascendente y
cuando el Apellido se repite los datos se ordenan por FechaIngreso en orden descendente. Observar la
siguiente figura, para ver un ejemplo de la explicación anterior.
Utilización de un Alias
En determinadas circunstancias puede ser necesario asignar un nombre a algún campo o combinación de
campos de una tabla. Para ello se cuenta con la palabra reservada AS.

Ejemplo:
Nota: Para comprobar el funcionamiento de las sentencias SQL que se muestran en los ejemplos, se
puede utilizar la base de datos VIDEO CLUB.MDB, que se encuentra en la carpeta EJERCICIOS
ACCESS. Utilizar la ventana de consultas de Access, en vista SQL, para escribir y ejecutar las
sentencias.
SELECT Apellido AS Socio
FROM Socios

Esta consulta devuelve los apellidos de todos los registros, de la tabla Socios, pero, en el resultado de la
consulta, el campo Apellido se denomina Socio.
Para ver una demostración animada, ubicar el
puntero del mouse sobre la imagen de la izquierda.

Ejemplo:
La siguiente consulta devuelve los nombres y apellidos de los Socios, pero el campo devuelto se llama
Socio.
SELECT [Apellido]+[Nombre] AS Socio
FROM Socios

Para ver una demostración animada, ubicar el


puntero del mouse sobre la imagen de la izquierda.
Filtrar Registros

Hasta el momento se vio cómo generar consultas, utilizando la instrucción SELECT, que devuelvan
algunos o todos los campos de todos los registros de una determinada tabla.

Ahora se verá cómo filtrar los registros de una tabla con el fin de recuperar solamente aquellos que
cumplan con condiciones preestablecidas.
¿Qué pasa cuando se desea obtener como resultado de la consulta, una tabla con un conjunto de registros
que cumplan una determinada condición?
En este caso se hace uso de las cláusulas DISTINCT, TOP y WHERE

Cláusula DISTINCT

En la instrucción SELECT, se puede incluir la cláusula DISTINCT, con la finalidad de eliminar del
resultado de la consulta, las filas repetidas.

Hasta el momento las sentencias generadas fueron del tipo:

SELECT Apellido FROM Socios

que es equivalente a escribir

SELECT ALL Apellido FROM Socios


Obteniendo como resultado, los apellidos de todos los registros que tuviese la tabla Socios. Si algún
apellido está repetido en la tabla Socios, también estará repetido en el resultado de la consulta.

Si en lugar de la cláusula ALL se utiliza DISTINCT entonces se obtendrá como resultado de la consulta
una tabla donde cada apellido se muestre una sola vez, aún cuando en la tabla origen aparezca repetido.

SELECT DISTINCT Apellido FROM Socios

Cláusula TOP

La cláusula TOP permite seleccionar de todos los registros de una tabla, los n primeros registros. Para
ello es necesario generar una sentencia de consulta que incluya también la cláusula ORDER BY.

Ejemplo:

SELECT TOP 5 Apellido, Nombre


FROM Socios
ORDER BY FechaIngreso

Esta consulta devuelve los Apellidos y Nombres de los cinco socios, de la tabla Socios, que tengan fecha
de ingreso más antigua.

Lo que sucede en realidad es que se ordena la tabla por FechaIngreso en orden ascendente y luego se
seleccionan los primeros cinco registros.
Cláusula WHERE
La cláusula WHERE se utiliza para determinar cuales son los registros de las tablas, que aparecen en la
cláusula FROM, que se desean ver en los resultados de una consulta de selección.
A continuación de la cláusula WHERE se deben especificar las condiciones de selección. Si no se
emplea esta cláusula, la consulta devolverá todos los registros de la tabla.
WHERE es opcional, pero si se utiliza se coloca a continuación de FROM.

En principio se verá la utilización de la cláusula WHERE para consultas con una sola
condición.

SELECT Campos
FROM Tabla
WHERE Condición
ORDER BY Campo

En caso de tener una sentencia SELECT con las cláusulas WHERE y ORDER BY, se debe tener presente
que se debe respetar el siguiente orden que se muestra en la sintaxis del cuadro anterior (la cláusula
WHERE siempre se escribe primero que ORDER BY).

Es conveniente tener presente lo siguiente:

● Cuando se desea establecer una condición referida a un campo de tipo carácter, la condición de
búsqueda debe ir encerrada entre comillas simples
● Cuando se utiliza un campo de tipo Sí/No, se debe comparar por true/false o -1/0.
● No es posible establecer condiciones de búsqueda en los campos memo
● Las fechas se deben escribir siempre en formato dd-mm-aa en donde mm representa el mes, dd el
día y aa el año, debiendo utilizar únicamente el guión (-) como separador y además la fecha debe ir
encerrada entre almohadillas (#).
Por ejemplo: si se desea hacer referencia al día 5 de Enero de 2001 se debe escribir lo siguiente:
#05-01-01# ó #5-1-01#.

Operadores de comparación

Para generar las condiciones de selección se pueden utilizar los siguientes operadores de comparación
Operador Uso
< Menor que
> Mayor que
<> Distinto de
<= Menor ó Igual que
>= Mayor ó Igual que
= Igual que
BETWEEN Utilizado para especificar un rango de valores.
LIKE Utilizado en la comparación de un modelo
IN Utilizado para especificar una lista de valores.

Ejemplo
Nota: Para comprobar el funcionamiento de las sentencias SQL que se muestran en los ejemplos, se
puede utilizar la base de datos VIDEO CLUB.MDB, que se encuentra en la carpeta EJERCICIOS
ACCESS. Utilizar la ventana de consultas de Access, en vista SQL, para escribir y ejecutar las
sentencias.
SELECT Nombre, Apellido SELECT Duración
FROM Socios FROM Videos
WHERE FechaIngreso>=#5/4/95# WHERE Título='El fugitivo'
Otros Operadores

Operador BETWEEN

Para seleccionar registros de una tabla que cumplan con una condición que involucra un rango de
valores, se debe utilizar el operador BETWEEN.

La sintaxis es:
SELECT Campos
FROM Tabla
WHERE Campo [NOT] BETWEEN valor1 AND valor2

Nota: la condición NOT es opcional.


En este caso la consulta devuelve los registros que contienen en "campo" un valor incluido en el intervalo
valor1, valor2 (ambos inclusive).
Si se utiliza el NOT, devuelve los valores no incluidos en el intervalo.

Ejemplo
Nota: Para comprobar el funcionamiento de las sentencias SQL que se muestran en los ejemplos, se
puede utilizar la base de datos VIDEO CLUB.MDB, que se encuentra en la carpeta EJERCICIOS
ACCESS. Utilizar la ventana de consultas de Access, en vista SQL, para escribir y ejecutar las
sentencias.
SELECT Título
FROM Videos
WHERE Copias BETWEEN 2 AND 5

Esta consulta devuelve los Títulos de los registros de la tabla Videos, que cumplan con la siguiente
condición: la cantidad de Copias debe estar entre 2 y 5.
Operador LIKE

Este operador se utiliza cuando se desea seleccionar un conjunto de registros de la tabla, que cumplan
con un determinado patrón.

SELECT Campos
FROM Tabla
WHERE campo LIKE patrón

Esta consulta devuelve los campos de la Tabla que incluyan en los valores de campo los caracteres de
patrón.

Por patrón se entiende un valor completo (Ana María), o un valor que incluye caracteres comodín, como
los reconocidos por el sistema operativo para encontrar un rango de valores (An*).

Comodín Modelo Encuentra


* Cualquier cantidad de caracteres F*cia Francia, Florencia
? Un solo carácter ?a?ier Javier, Xavier, Xabier
[ ] Un carácter entre varios posibles Paul[ao] Paula, Paulo
! No buscar ese carácter [!4]to 5to, 6to

Ejemplo de utilización de comodines


LIKE Devuelve los campos cuyo contenido empiece con una letra de la
"[A-D]*" A a la D seguidas de cualquier cantidad de caracteres.

Ejemplo
SELECT *
FROM Videos
WHERE Título LIKE "El*"

Esta consulta devuelve todos los campos de los registros de la tabla Videos que cumplen con la siguiente
condición: el título del vídeo comienza con los caracteres "El".

Operador IN

Sintaxis
SELECT Campos
FROM Tabla
WHERE campo [NOT] IN lista

Nota: la condición NOT es opcional.


En este caso la consulta devuelve los registros que contienen en el campo "campo" un valor de los
incluidos en la lista.
Si se utiliza el NOT, devuelve los valores no incluidos la lista.

Ejemplo
SELECT *
FROM Distribuidoras
WHERE Distribuidora IN ('Halven', 'Censa', 'Ronlay')

Esta consulta devuelve todos los campos de los registros de la tabla Distribuidoras, que cumplen con la
condición de tener en el campo Distribuidora alguno de los siguientes valores: Halven, Censa y Ronlay.
Operadores Lógicos

Cuando se desea generar una consulta utilizando la cláusula WHERE, pero estableciendo más de una
condición de selección, se debe recurrir a los operadores lógicos

Algunos de los operadores lógicos soportados por SQL son: AND, OR y NOT y sus posibles
combinaciones.

SELECT Campos SELECT Campos SELECT Campos


FROM Tabla FROM Tabla FROM Tabla
WHERE condición1 AND WHERE condición1 OR WHERE NOT condición
condición2 ... condición2 ...

Ejemplos

Nota: Para comprobar el funcionamiento de las sentencias SQL que se muestran en los ejemplos, se
puede utilizar la base de datos VIDEO CLUB.MDB, que se encuentra en la carpeta EJERCICIOS
ACCESS. Utilizar la ventana de consultas de Access, en vista SQL, para escribir y ejecutar las
sentencias.

SELECT Nombre, Apellido


FROM Socios
WHERE (FechaIngreso>#1/1/95# AND
FechaIngreso<#31/12/95#) OR Cuponera= -1
La consulta anterior devuelve los Nombres y Apellidos de los registros de la tabla Socios que tengan un
valor en el campo FechaIngreso, comprendido entre 1/1/95 y 31/12/95, o que tienen en el campo
Cuponera un valor equivalente a -1.

SELECT Título, Duración


FROM Videos
WHERE NOT Distribuidora = 3

En este caso la consulta devuelve los Títulos y Duraciones, de lo registros de la tabla Videos, que no
tengan en el campo Distribuidora el valor 3.
Consultas sobre Varias Tablas

En ocasiones es necesario mostrar, como resultado de una consulta, datos que están almacenados en
tablas distintas, o es necesario incluir en la cláusula WHERE campos de varias tablas para armar una
condición.

Para poder generar una consulta que trabaje sobre más de una tabla es necesario que dichas tablas se
vinculen. Varias tablas pueden vincularse mediante campos que tengan información relacionada. A esta
operación se le denomina JOIN.

Para llevar adelante dicha operación se colocan los nombres de las tablas a vincular, a continuación de la
cláusula FROM, separados por comas y luego de la cláusula WHERE se escriben los campos de dichas
tablas que se van a relacionar.

SELECT Campos
FROM Tabla1, Tabla2, ...
WHERE Tabla1.Campo = Tabla2.Campo AND condición

Cuando se tienen que utilizar campos que tienen el mismo nombre en las tablas a
vincular, se aplica el formato: Tabla.Campo para identificar claramente al campo
de qué tabla se está haciendo referencia.
Observación Otra alternativa es utilizar un alias.

Ejemplo
Nota: Para comprobar el funcionamiento de las sentencias SQL que se muestran en los ejemplos, se
puede utilizar la base de datos VIDEO CLUB.MDB, que se encuentra en la carpeta EJERCICIOS
ACCESS. Utilizar la ventana de consultas de Access, en vista SQL, para escribir y ejecutar las
sentencias.

SELECT Videos.Título, Videos.Duración


FROM Videos, Prestamos
WHERE Videos.IdVideo=Prestamos.IdVideo AND Prestamos.Devolución>#1/1/1997#

Esta consulta devuelve el Título y la Duración (obtenidos de la tabla Videos), de todos los videos, que en
la tabla Préstamos, tengan un valor superior a 1/1/1997 en el campo Devolución.

A continuación de FROM, es necesario colocar el nombre de la tabla Videos (por los campos que se
muestran en el SELECT) y el de la tabla Préstamos (por los campos que se utilizan en la condición del
WHERE).

La expresión en rojo es necesario colocarla para que sólo se muestren, en el resultado de la consulta,
aquellos registros que están presentes en las dos tablas

Observar cómo, por tener un campo de igual nombre en dos tablas distintas, se tuvo que utilizar el
formato Tabla.Campo para hacer referencia a los campos IdVideo de la tabla Videos y de la tabla
Préstamos.
Consultas de Acción

Hasta ahora se ha visto cómo seleccionar datos almacenados en las tablas de una base de datos. De aquí
en adelante se verá cómo actualizar esos datos, es decir insertar nuevas filas, borrar filas o cambiar el
contenido de las filas de una tabla.

Estas operaciones modifican los datos almacenados en las tablas pero no su estructura, ni su definición.

Se tratará el tema de inserción de nuevas filas (con la sentencia INSERT INTO), eliminación de filas de
una tabla (con la sentencia DELETE) y por último cómo modificar el contenido de las filas de una tabla
(con la sentencia UPDATE).

Consulta de Datos Añadidos

La instrucción INSERT INTO permite agregar un registro o fila en una tabla y llevar adelante lo que se
denomina consultas de datos añadidos.

La sintaxis es la siguiente:

INSERT INTO Tabla (campo1, campo2, .., campoN)


VALUES (valor1, valor2, ..., valorN)

Esta consulta agrega un registro nuevo a la Tabla y guarda en el campo1 el valor1, en el campo2 el
valor2 y así sucesivamente.
El registro nuevo se agrega al final de la tabla.

Varias aclaraciones

Cuando se están insertando valores de tipo carácter, los mismos deben ir escritos
entre comillas simples ( ' )

Cuando se están insertando fechas, las mismas deben ajustarse al formato


mm-dd-aa y deben escribirse entre almohadillas ( # ).

Cuando no se especifica el nombre de alguno de los campos que componen el


registro, se insertará el valor predeterminado o Null.

Si la tabla destino contiene una clave principal, hay que asegurarse de que sea
única y con valores no-Null ; si no es así, no se agregará el registro.

Si se agrega un registro a una tabla que tiene un campo Autonumérico, no se debe


incluir dicho campo en la sentencia.

Si se omite la lista de campos, la cláusula VALUES debe incluir un valor para


cada uno de los campos de la tabla y estos valores deben aparecer en el mismo
orden en que se encuentran en el diseño de la tabla, de otra forma fallará el
INSERT INTO.
Ejemplo

Nota: Para comprobar el funcionamiento de las sentencias SQL que se muestran en los ejemplos, se
puede utilizar la base de datos VIDEO CLUB.MDB, que se encuentra en la carpeta EJERCICIOS
ACCESS. Utilizar la ventana de consultas de Access, en vista SQL, para escribir y ejecutar las
sentencias.

INSERT INTO Videos (IdVideo, Título, Duración, Distribuidora,


Copias)
VALUES ('1100','Un paseo por las nubes', #01:35#, 1, 3)

La sentencia del ejemplo anterior inserta un nuevo registro, al final de la tabla Videos. Este registro
nuevo tendrá en el campo IdVideo el valor '1100' Título el valor 'Un paseo por las nubes', en el campo
Duración, el valor #01:35#, en el campo Distribuidora, el valor 1 y en el campo Copias, el valor 3.
Consulta de Eliminación
Las consultas de eliminación permiten eliminar de la base de datos aquellos registros que cumplan con una
determinada condición.
La instrucción DELETE permite generar una consulta que elimina los registros de una o más tablas, listadas en
la cláusula FROM y que satisfacen la o las condiciones de la cláusula WHERE.
Su sintaxis es:

DELETE Tabla.*
FROM lista tablas
WHERE condición

Una consulta de eliminación elimina los registros completos, no únicamente los datos en campos específicos.
Si se desea eliminar valores en un campo especificado, se debe crear una consulta de actualización que cambie
los valores a Null.
Una vez que se han eliminado los registros utilizando una consulta de eliminación, no se
puede deshacer la operación.
Advertencia

Si se desea saber qué registros se eliminarán, primero realizar una consulta de selección
utilizando el mismo criterio y luego se ejecuta la consulta de eliminación.
Es recomendable mantener una copia de seguridad.
Observación

Ejemplos:

Nota: Para comprobar el funcionamiento de las sentencias SQL que se muestran en los ejemplos, se puede
utilizar la base de datos VIDEO CLUB.MDB, que se encuentra en la carpeta EJERCICIOS ACCESS. Utilizar
la ventana de consultas de Access, en vista SQL, para escribir y ejecutar las sentencias.
DELETE Videos.*
FROM Videos
WHERE Copias=2

La consulta anterior elimina de la tabla Videos, todos los registros que tengan en el campo Copias el valor 2.
Consulta de Actualización
Utilizando la instrucción UPDATE se genera una consulta de actualización que permite cambiar los valores de
los campos de una tabla especificada, basándose en una condición determinada.

Su sintaxis es:

UPDATE Tabla
SET Campo1=Valor1, Campo2=Valor2, ... CampoN=ValorN
WHERE condición

UPDATE se utiliza cuando se desea cambiar un gran número de registros o cuando éstos se encuentran en varias
tablas. Se pueden cambiar varios campos a la vez.

Ejemplo

UPDATE Socios
SET CantPelículas=CantPelículas+10
WHERE Cuponera= -1

Con esta consulta se incrementa en 10 el valor del campo CantPeliculas, de la tabla Socios, para todos aquellos
registros que tengan el valor -1 en el campo Cuponera.
Si se desea saber qué registros se van a modificar, antes de llevar adelante la modificación,
se debe realizar una consulta de selección utilizando la misma condición que para la
actualización y luego ejecutar la consulta de actualización.
Observación

También podría gustarte