Usando sql en el acceso. Lenguaje de consulta SQL. Comandos SQL básicos para cambiar datos

Los artículos anteriores discutieron los problemas. Se considera la tecnología para crear la estructura de tablas de bases de datos “sql_training_st.mdb” basada en consultas SQL. Además, mediante consultas SQL se completaron las tablas DBMS de ACCESS "sql_training_st.mdb".

Se sabe que en las bases de datos relacionales, el lenguaje SQL está diseñado para manipular datos, definir la estructura de la base de datos y sus componentes, controlar el acceso de los usuarios a la base de datos y gestionar transacciones o gestionar cambios en la base de datos.

El lenguaje SQL consta de cuatro grupos:

  • lenguaje de manipulación de datos DML;
  • Lenguaje de definición de datos DDL;
  • lenguaje de gestión de datos DCL;
  • Lenguaje de control de transacciones TCL.

El grupo DML incluye cuatro tipos principales. consultas SQL:

  • INSERTAR: diseñado para agregar uno o más registros al final de la tabla;
  • ACTUALIZACIÓN: ya está previsto cambiar registros existentes en columnas de la tabla o modificaciones de datos en la tabla;
  • ELIMINAR: diseñado para eliminar registros de la tabla;
  • SELECT: diseñado para seleccionar datos de tablas.

Los primeros tres tipos de consultas SQL (INSERT, UPDATE, DELETE), que se relacionan con consultas correctivas a la base de datos, se discutieron en la página

En este artículo veremos consultas para recuperar datos de tablas de bases de datos de Access.

Para recuperar información almacenada en una base de datos de Access 2003 o 2007, puede utilizar una consulta SELECT para seleccionar datos de las tablas.

Compongamos la siguiente consulta SQL (declaración SQL) para muestreo; para hacer esto, seleccione el modo SQL ejecutando el comando Ver/Modo SQL. Ingrese la siguiente declaración SQL desde el teclado:

SELECCIONAR *
DE Estudiantes;

Esta declaración consta de dos cláusulas "SELECT *" y "FROM Students". La primera cláusula contiene una instrucción SELECT y un identificador * ("identificador *" significa enumerar todas las columnas de la tabla). La segunda cláusula contiene la declaración FROM y el identificador "Estudiantes".

FROM: define la tabla Estudiantes, que contiene los campos especificados en la cláusula SELECT. Cabe señalar que una consulta de selección siempre contiene dos declaraciones: SELECT y FROM. Dependiendo de las condiciones de selección, otros operadores pueden estar presentes en la solicitud de selección. La Figura 1 muestra una captura de pantalla de una solicitud para recuperar datos.


Arroz. 1. Consulta SQL SELECT para seleccionar datos

En este ejemplo, se genera una muestra de datos a partir de todas las columnas de la tabla Estudiantes.

Guarde la solicitud con el nombre "Estudiantes-consulta1". Como resultado de ejecutar el comando “Guardar”, aparecerá el objeto “Solicitudes: Estudiantes-solicitud1” en el “Área de Navegación”.

Luego de guardar la solicitud de selección, deberá ejecutar esta solicitud haciendo clic en el icono “Ejecutar”. Los resultados del comando "Ejecutar" se muestran en la Fig. 2.



Arroz. 2. Seleccionar datos de todas las columnas de la tabla Estudiantes

El lenguaje SQL no tiene las funciones de un lenguaje de desarrollo completo, pero está enfocado al acceso a datos, por lo que se incluye en las herramientas de desarrollo de programas. En este caso se llama SQL incorporado. El estándar del lenguaje SQL está respaldado por implementaciones modernas de los siguientes lenguajes de programación: PL/1, Ada, C, COBOL, Fortran, MUMPS y Pascal.

En los sistemas de desarrollo de aplicaciones especializados del tipo cliente-servidor, el entorno de programación suele complementarse con herramientas de comunicación (establecimiento y desconexión de conexiones con servidores de bases de datos, detección y procesamiento de errores que ocurren en la red, etc.), herramientas de desarrollo. interfaces de usuario, herramientas de diseño y depuración.

Hay dos métodos principales para utilizar SQL incorporado: estático y dinámico.

En estático el uso del lenguaje (SQL estático) El texto del programa contiene llamadas a funciones del lenguaje SQL, que se incluyen rígidamente en el módulo ejecutable después de la compilación. Los cambios en las funciones llamadas pueden realizarse al nivel de parámetros de llamada individuales utilizando variables del lenguaje de programación.

En dinámica el uso del lenguaje (SQL dinámico) Se supone que las llamadas a funciones SQL se construyen dinámicamente y se interpretan estas llamadas, por ejemplo, accediendo a datos desde una base de datos remota, durante la ejecución del programa. El método dinámico se suele utilizar en los casos en los que la aplicación no conoce de antemano el tipo de llamada SQL y se construye en diálogo con el usuario.

El objetivo principal del lenguaje SQL (así como de otros lenguajes para trabajar con bases de datos) es preparar y ejecutar consultas. Como resultado del muestreo de datos de una o más tablas, se puede obtener un conjunto de registros, llamado presentación.

Actuación Es esencialmente una tabla formada como resultado de la ejecución de una consulta. Podemos decir que es un tipo de consulta almacenada. Puede crear varias vistas utilizando las mismas tablas. La vista en sí se describe especificando el identificador de vista y la solicitud que se debe realizar para obtenerla.



Para facilitar el trabajo con vistas, se introdujo el concepto de cursor en el lenguaje SQL. Cursor es una especie de puntero que se utiliza para desplazarse por conjuntos de registros al procesarlos.

La descripción y uso de un cursor en SQL es la siguiente. En la parte descriptiva del programa se asocia una variable de tipo cursor (CURSOR) a declaración SQL(generalmente con SELECCIONAR declaración). En la parte de ejecución del programa, el cursor se abre (OPEN<имя курсора», перемещение курсора по записям (FETCI-1 <имя курсора>...), seguido del procesamiento adecuado y finalmente cerrando el cursor (CLOSE<имя курсора>).

En los DBMS relacionales, para realizar operaciones sobre relaciones se utilizan dos grupos de lenguajes, que tienen como base matemática los lenguajes de consulta teóricos propuestos por E. Codd:

Álgebra relacional;

Cálculo relacional.

En álgebra relacional Los operandos y resultados de todas las acciones son relaciones. Los lenguajes de álgebra relacional son procedimentales porque la relación resultante de una consulta en una base de datos relacional se evalúa ejecutando una secuencia de operadores relacionales aplicados a las relaciones. Los operadores constan de operandos, que son relaciones, y operaciones relacionales.

Las operaciones de álgebra relacional de Codd se pueden dividir en dos grupos: Teoría de conjuntos básica y relacional especial.. El primer grupo de operaciones incluye las operaciones clásicas de la teoría de conjuntos: unión, diferencia, intersección y producto. El segundo grupo representa el desarrollo de operaciones ordinarias de la teoría de conjuntos hacia problemas reales de manipulación de datos; incluye las operaciones: proyección, selección, división y conexión.

Idiomas de cálculo no son procesales (descriptivos o declarativos) y permiten que las consultas se expresen utilizando un predicado de primer orden (declaraciones de función) que las tuplas o dominios relacionales deben satisfacer. Una consulta de base de datos ejecutada utilizando dicho lenguaje contiene solo información sobre el resultado deseado. Estos lenguajes se caracterizan por la presencia de conjuntos de reglas para escribir consultas. En particular, SQL pertenece a los lenguajes de este grupo.

Características de la aplicación consultas SQL

Una consulta SQL es una consulta creada mediante una declaración SQL. Ejemplos de consultas SQL son consultas de combinación, consultas de servidor, consultas de control y consultas subordinadas.

Una consulta de unión es una consulta que combina campos (columnas) de una o más tablas o consultas en un solo campo o columna en el conjunto de registros de resultados. Por ejemplo, seis vendedores proporcionan a la gerencia un inventario de su inventario cada mes. Al crear una consulta de unión, puede combinar estos inventarios en un conjunto de registros de resultados y luego desarrollar una consulta de creación de tabla basada en la consulta de unión.

Una solicitud al servidor transmite comandos SQL a través de ODBC a un servidor, por ejemplo, Microsoft servidor SQL. Las consultas al servidor le permiten trabajar directamente con tablas en el servidor en lugar de unirlas. El resultado de una solicitud al servidor puede ser cargar registros o cambiar datos.

Una consulta de control crea o modifica objetos de base de datos, como tablas de Access o SQL Server.

Una subconsulta consta de una instrucción SQL SELECT dentro de otra consulta de selección o cambio. Estas instrucciones se ingresan en la línea "Campo" del formulario de solicitud para definir un nuevo campo o en la línea "Condición de selección" para definir la condición de selección del campo. Las subconsultas se utilizan para hacer lo siguiente:

Comprobar en una subconsulta la existencia de algunos resultados utilizando las palabras reservadas EXISTE o NO EXISTE;

Busca en la consulta principal cualquier valor que sea igual, mayor o menor que los valores devueltos en la subconsulta (utilizando las palabras reservadas ANY, IN o ALL);

Crear subconsultas dentro de subconsultas (subconsultas anidadas).

El lenguaje SQL en Access se puede utilizar para desarrollar formularios de pantalla, informes, así como para crear macros y programas VBA.

Relación entre los lenguajes QBE y SQL

En Access, existe una estrecha relación entre los lenguajes QBE y SQL. Las tablas de consulta (formularios) en lenguaje QBE, completadas por el usuario, se convierten en expresiones SQL antes de su ejecución inmediata. Es decir, el lenguaje SQL es un estándar interno para ejecutar consultas. Este mecanismo tiene la ventaja de permitir que el sistema Access unifique la preparación de consultas para su ejecución en computadoras locales y remotas. En el último caso, el mensaje SQL en realidad se transmite a la computadora: el servidor de solicitudes.

En Access, una consulta puede estar en uno de tres modos (estados): Diseño, SQL y Tabla. El modo de diseño se utiliza para desarrollar una nueva consulta desde cero (sin utilizar asistentes u otras herramientas) o para cambiar el diseño de una consulta existente. El modo SQL se utiliza para ingresar o ver declaraciones SQL. El modo de tabla se utiliza para trabajar con resultados de consultas.

SQL en formularios e informes

Las principales fuentes de registros en visualizaciones e informes son tablas y consultas. En el segundo caso, la solicitud puede ser una consulta a una base de datos ya preparada o creada al desarrollar un formulario o informe.

SQL en macros

Los comandos de macro son parte de macros que se utilizan para automatizar la ejecución de acciones que se repiten con frecuencia al trabajar con una base de datos. Una macro es uno o más comandos de macro con argumentos.

Las macros se llaman desde la ventana de la base de datos o automáticamente cuando ocurren ciertos eventos. El evento en el que se llama la macro puede ser, por ejemplo, hacer clic en un botón en el área del formulario o abrir una ventana de base de datos. Además de realizar determinadas acciones en los objetos de la base de datos, las macros pueden llamar a otras macros, programas de Visual Basic y aplicaciones externas.

De los muchos comandos de macro, dos comandos de macro están directamente relacionados con SQL: Ejecutar consulta SQL (Ejecutar SQL) y Abrir consulta (OpenQuery)

Comando macro Ejecutar consulta SQL ejecuta una consulta de control o cambio de acceso utilizando la instrucción SQL adecuada. Esta macro permite realizar acciones en una macro sin guardar primero las consultas. También puede ejecutar consultas guardadas usando la macro.

Solicitudes de cambio son declaraciones SQL que implementan las siguientes funciones: agregar (INSERT INTO), eliminar (DELETE), crear una tabla (SELECT...INTO) y actualizar (UPDATE)

Solicitudes de control son sentencias SQL que realizan las siguientes funciones: crear una tabla (CREATE TABLE), modificar una tabla (ALTER TABLE), eliminar una tabla (DROP TABLE), crear un índice (CREATE INDEX) y eliminar un índice (DROP INDEX)

El único y requerido argumento del comando macro. Ejecutar una consulta SQL es una declaración SQL. Argumento de macro como texto SQL: las instrucciones se ingresan manualmente en la ventana de entrada de macro o se copian desde la ventana SQL, lo que suele ser más conveniente.

Comando macro Solicitud abierta le permite abrir una consulta de selección o cruzada (en modos de tabla, diseño y vista previa), ejecutar una consulta para cambiar o ingresar datos.

La macro especifica tres argumentos: nombre de la solicitud, modo y modo de datos. El primer argumento especifica el nombre de la solicitud a abrir y es obligatorio. El segundo argumento especifica el modo de apertura de la consulta (Tabla, Diseño y Vista). El tercer argumento describe el modo de entrada de datos en la solicitud ("Agregar", "Cambiar" y "Sólo lectura")

SQL en programas VBA

VBA, al igual que las macros, está diseñado para automatizar operaciones repetitivas en objetos de bases de datos de Access.

En Access, existen las siguientes formas de ejecutar programas VBA:

Incluir un programa en el procedimiento de procesamiento de eventos;

Llamar a una función en una expresión;

Llamar a un procedimiento Sub en otro procedimiento o en una ventana de depuración;

Ejecutar el comando macro RunCode (RunCode) en una macro.

Las funciones se utilizan en expresiones que definen campos calculados en formularios, informes o consultas. Las expresiones se utilizan para especificar condiciones en consultas y filtros, así como en macros, declaraciones y métodos de VBA y declaraciones SQL. Un procedimiento Sub puede incluir subrutinas VBA públicas que se llaman desde otros procedimientos.

Veamos cómo ejecutar una consulta de base de datos usando declaraciones SQL en un programa de Visual Basic para Aplicaciones.

La solicitud selecciona registros de la base de datos que satisfacen ciertas condiciones (solicitud de selección) o emite instrucciones para realizar acciones específicas con registros que satisfacen ciertas condiciones (solicitud de cambio).

Existen las siguientes formas de ejecutar consultas:

Llamar al método Execute (para ejecutar consultas SQL para cambios);

Creación y ejecución de un objeto QueryDef especial;

Usar una declaración SQL como argumento del método OpenRecordset;

Ejecute el método OpenRecordset en un objeto QueryDef existente;

Llamar a los métodos RunSQL y OpenQuery.

método de ejecución Se utiliza si necesita realizar un cambio en la base de datos que no devuelve registros. Por ejemplo, operaciones de inserción o eliminación de registros.

Objeto QueryDef representa una definición de consulta guardada en la base de datos. Puede considerarse como una declaración SQL compilada.

Método OpenRecordset se utiliza para abrir un objeto de tipo Recordset para realizar operaciones posteriores en él.

método ejecutar SQL ejecuta una macro Ejecutar una consulta SQL en el programa VBA

método OpenQuery ejecuta el comando de macro OpenQuery en un programa VBA. Con él, puede abrir una consulta en modo Hoja de datos, Diseño o Vista. Esto establece uno de los siguientes modos para trabajar con datos: agregar, cambiar o solo lectura.

La elección de la opción de ejecución de la consulta la determina el programador, teniendo en cuenta las características del problema a resolver.

Todo desarrollador web necesita saber SQL para escribir consultas de bases de datos. Y, aunque phpMyAdmin no ha sido cancelado, a menudo es necesario ensuciarse las manos para escribir SQL de bajo nivel.

Por eso hemos preparado un breve recorrido por los conceptos básicos de SQL. ¡Empecemos!

1. Crea una tabla

La instrucción CREATE TABLE se utiliza para crear tablas. Los argumentos deben ser los nombres de las columnas, así como sus tipos de datos.

Creemos una tabla simple llamada mes. Consta de 3 columnas:

  • identificación– Número de mes del año natural (entero).
  • nombre– Nombre del mes (cadena, máximo 10 caracteres).
  • días– Número de días de este mes (entero).

Así es como se vería la consulta SQL correspondiente:

CREAR TABLA meses (id int, nombre varchar(10), días int);

Además, al crear tablas, es recomendable agregar una clave principal para una de las columnas. Esto mantendrá los registros únicos y acelerará las solicitudes de recuperación. En nuestro caso, dejemos que el nombre del mes sea único (columna nombre)

CREAR TABLA meses (id int, nombre varchar(10), días int, CLAVE PRIMARIA (nombre));

fecha y hora
Tipo de datosDescripción
FECHAValores de fecha
FECHA Y HORAValores de fecha y hora precisos al minuto.
TIEMPOValores de tiempo

2. Insertar filas

Ahora completemos nuestra tabla. meses información útil. Agregar registros a una tabla se realiza mediante la instrucción INSERT. Hay dos formas de escribir esta instrucción.

El primer método no consiste en especificar los nombres de las columnas donde se insertarán los datos, sino especificar solo los valores.

Este método de grabación es simple, pero inseguro, ya que no hay garantía de que a medida que el proyecto se expanda y se edite la tabla, las columnas estarán en el mismo orden que antes. Una forma segura (y al mismo tiempo más engorrosa) de escribir una declaración INSERT requiere especificar tanto los valores como el orden de las columnas:

Aquí está el primer valor de la lista. VALORES coincide con el primer nombre de columna especificado, etc.

3. Extraer datos de tablas

La declaración SELECT es nuestra mejor amiga cuando queremos recuperar datos de una base de datos. Se utiliza con mucha frecuencia, así que presta mucha atención a este apartado.

El uso más simple de la instrucción SELECT es una consulta que devuelve todas las columnas y filas de una tabla (por ejemplo, tablas por nombre caracteres):

SELECCIONAR * DE "caracteres"

El símbolo de asterisco (*) significa que queremos obtener datos de todas las columnas. Dado que las bases de datos SQL suelen constar de más de una tabla, es necesario especificar la palabra clave FROM, seguida del nombre de la tabla, separada por un espacio.

A veces no queremos obtener datos de no todas las columnas de una tabla. Para ello, en lugar de un asterisco (*), debemos escribir los nombres de las columnas deseadas, separados por comas.

SELECCIONE id, nombre DEL mes

Además, en muchos casos queremos que los resultados resultantes se ordenen en un orden específico. En SQL hacemos esto usando ORDER BY. Puede aceptar un modificador opcional: clasificación ASC (predeterminada) en orden ascendente o DESC, clasificación en orden descendente:

SELECCIONAR id, nombre DEL mes ORDENAR POR nombre DESC

Cuando utilice ORDER BY, asegúrese de que aparezca al final de la instrucción SELECT. De lo contrario se mostrará un mensaje de error.

4. Filtrado de datos

Ha aprendido a seleccionar columnas específicas de una base de datos mediante una consulta SQL, pero ¿qué pasa si también necesitamos recuperar filas específicas? La cláusula WHERE viene al rescate aquí, permitiéndonos filtrar los datos según la condición.

En esta consulta estamos seleccionando solo esos meses de la tabla mes, en el que hay más de 30 días usando el operador mayor que (>).

SELECCIONE ID, nombre DEL mes DONDE días> 30

5. Filtrado de datos avanzado. Operadores Y y O

Anteriormente utilizamos el filtrado de datos mediante un único criterio. Para un filtrado de datos más complejo, puede utilizar los operadores Y y O y los operadores de comparación (=,<,>,<=,>=,<>).

Aquí tenemos una tabla que contiene los cuatro álbumes más vendidos de todos los tiempos. Elijamos los que están catalogados como rock y han vendido menos de 50 millones de copias. Esto se puede hacer fácilmente colocando un operador AND entre estas dos condiciones.


SELECCIONE * DE álbumes DONDE género = "rock" Y ventas_en_millones<= 50 ORDER BY released

6. En/Entre/Me gusta

WHERE también admite varios comandos especiales, lo que le permite comprobar rápidamente las consultas utilizadas con más frecuencia. Aquí están:

  • IN – sirve para indicar una variedad de condiciones, cualquiera de las cuales puede cumplirse
  • ENTRE: comprueba si un valor está dentro del rango especificado
  • ME GUSTA: busca patrones específicos

Por ejemplo, si queremos seleccionar álbumes con estallido Y alma música, podemos usar IN("value1","value2") .

SELECCIONE * DE los álbumes DONDE el género EN ("pop", "soul");

Si queremos obtener todos los álbumes editados entre 1975 y 1985, tenemos que escribir:

SELECCIONE * DE álbumes DONDE lanzados ENTRE 1975 Y 1985;

7. Funciones

SQL está repleto de funciones que hacen todo tipo de cosas útiles. Éstos son algunos de los más utilizados:

  • COUNT() – devuelve el número de filas
  • SUM(): devuelve la suma total de una columna numérica
  • AVG(): devuelve el promedio de un conjunto de valores
  • MIN() / MAX() – Obtiene el valor mínimo/máximo de una columna

Para obtener el año más reciente en nuestra tabla, debemos escribir la siguiente consulta SQL:

SELECCIONE MAX (lanzado) DE álbumes;

8. Subconsultas

En el párrafo anterior aprendimos cómo hacer cálculos simples con datos. Si queremos utilizar el resultado de estos cálculos, no podemos prescindir de consultas anidadas. Digamos que queremos generar artista, álbum Y año de lanzamiento para el álbum más antiguo de la tabla.

Sabemos cómo obtener estas columnas específicas:

SELECCIONAR artista, álbum, lanzado DE álbumes;

También sabemos cómo obtener el año más temprano:

SELECCIONE MIN (lanzado) DEL álbum;

Todo lo que se necesita ahora es combinar las dos consultas usando WHERE:

SELECCIONAR artista, álbum, lanzado DE álbumes DONDE lanzado = (SELECCIONAR MIN (lanzado) DE álbumes);

9. Unir mesas

En bases de datos más complejas, existen varias tablas relacionadas entre sí. Por ejemplo, a continuación se muestran dos tablas sobre videojuegos ( Juegos de vídeo) y desarrolladores de videojuegos ( desarrolladores_juegos).


En la mesa Juegos de vídeo hay una columna de desarrollador ( desarrollador_id), pero contiene un número entero, no el nombre del desarrollador. Este número representa el identificador ( identificación) del desarrollador correspondiente de la tabla de desarrolladores de juegos ( desarrolladores_juegos), enlazando lógicamente dos listas, permitiéndonos utilizar la información almacenada en ambas al mismo tiempo.

Si queremos crear una consulta que devuelva todo lo que necesitamos saber sobre los juegos, podemos usar INNER JOIN para vincular columnas de ambas tablas.

SELECCIONE video_games.name, video_games.genre, game_developers.name, game_developers.country DESDE video_games INNER JOIN game_developers EN video_games.developer_id = game_developers.id;

Este es el tipo JOIN más simple y común. Hay varias otras opciones, pero se aplican a casos menos comunes.

10. Alias

Si observa el ejemplo anterior, notará que hay dos columnas llamadas nombre. Esto es confuso, así que establezcamos un alias para una de las columnas repetidas, como esta nombre de la mesa desarrolladores_juegos sera llamado desarrollador.

También podemos acortar la consulta asignando alias a los nombres de las tablas: Juegos de vídeo llamemos juegos, desarrolladores_juegos - desarrolladores:

SELECCIONE juegos.nombre, juegos.género, devs.nombre COMO desarrollador, devs.país DE video_juegos COMO juegos INNER JOIN game_developers COMO desarrolladores EN juegos.desarrollador_id = devs.id;

11. Actualización de datos

A menudo necesitamos cambiar los datos en algunas filas. En SQL esto se hace usando la declaración ACTUALIZAR. La declaración ACTUALIZAR consta de:

  • La tabla en la que se ubica el valor de reposición;
  • Nombres de columnas y sus nuevos valores;
  • Las filas seleccionadas usando DÓNDE que queremos actualizar. Si no se hace esto, todas las filas de la tabla cambiarán.

A continuación se muestra la tabla Series de TV con series de televisión y sus ratings. Sin embargo, un pequeño error se coló en la tabla: aunque la serie Game of Thrones y se describe como una comedia, en realidad no lo es. ¡Arreglemos esto!

Datos de la tabla tv_series ACTUALIZAR tv_series SET género = "drama" DONDE id = 2;

12. Eliminar datos

Eliminar una fila de una tabla usando SQL es un proceso muy simple. Todo lo que necesitas hacer es seleccionar la tabla y la fila que deseas eliminar. Eliminemos la última fila de la tabla del ejemplo anterior. Series de TV. Esto se hace usando la instrucción >DELETE.

ELIMINAR DE tv_series DONDE id = 4

Tenga cuidado al escribir la declaración DELETE y asegúrese de que la cláusula WHERE esté presente; de ​​lo contrario, se eliminarán todas las filas de la tabla.

13. Eliminar una tabla

Si queremos eliminar todas las filas pero dejar la tabla en sí, use el comando TRUNCATE:

TRUNCAR TABLA nombre_tabla;

En el caso de que realmente queramos eliminar tanto los datos como la tabla en sí, el comando DROP nos será útil:

DROP TABLE nombre_tabla;

Mucho cuidado con estos comandos. ¡No se pueden cancelar!/p>

¡Esto concluye nuestro tutorial de SQL! Hay muchas cosas que no hemos cubierto, pero lo que ya sabes debería ser suficiente para brindarte algunas habilidades prácticas para tu carrera web.

La aplicación MS Access DBMS es un asistente completo para crear y mantener bases de datos encerradas en tablas y matrices. Si la base de datos es demasiado grande, es bastante difícil encontrar rápidamente los valores necesarios.

Es por eso que Access tiene una función llamada consultas. Veamos qué es, cómo funciona y qué características tiene.

Crear consultas en Microsoft Access

Para descubrir cómo crear consultas en Access, necesita conocer los conceptos básicos para trabajar con un DBMS.

Hay dos maneras de hacer este procedimiento:

  • Consultor de construcción.
  • Asistente para consultas.

El primer método le permite crear manualmente cualquiera de todas las consultas disponibles, pero con la pequeña advertencia de que el usuario tiene experiencia trabajando con una aplicación de Access. También debe comprender al menos sus tareas básicas. En cuanto al segundo método, es necesario considerarlo con más detalle.

Manera fácil para principiantes.

Una persona con conocimientos, con unos pocos clics del mouse, selecciona los componentes que el usuario necesitará para completar la solicitud y luego crea rápidamente un registro de acuerdo con los valores clave recopilados. Si este es el primer contacto con el DBMS y el usuario no tiene idea de cómo crear consultas en Access, entonces se selecciona el programa Asistente.

En este modo, podrá familiarizarse y comprender los siguientes tipos de solicitudes:

  • Simple.
  • Cruz.
  • Registros sin subordinados.
  • Entradas duplicadas.

Esta elección ya se hace en la primera etapa de trabajo con el Maestro. Y en el futuro, siguiendo instrucciones claras, incluso un usuario novato podrá crear una solicitud fácilmente. Conozcamos sus variedades.

Solicitud sencilla

Esta herramienta de hoja de cálculo recopila los datos requeridos de los campos especificados por el usuario. El nombre por sí solo muestra que este es el tipo de solicitud más popular para principiantes. Su conveniencia radica en que este trámite se abre en una nueva pestaña. Por lo tanto, la respuesta a la pregunta de cómo crear una consulta en Access 2010 resulta obvia después de abrir el primer menú del Asistente.

Solicitud cruzada

Este tipo de muestreo es más complejo. Para descubrir cómo crear una consulta cruzada en Access usando el "Asistente" en este modo, debe hacer clic en esta función en la primera ventana.

Aparecerá en pantalla una tabla en la que podrás seleccionar hasta tres columnas ubicadas en el original.

Uno de los campos restantes no seleccionados se puede utilizar como encabezados de la tabla de consulta. En la tercera etapa del procedimiento (intersección), se selecciona otro valor con una función de variabilidad (valor promedio, suma, primero, último).

La foto muestra que se ha creado la solicitud cruzada y que parámetros dados se han tomado las acciones necesarias.

Entradas duplicadas

Como su nombre lo indica, el objetivo principal de esta consulta es seleccionar todas las filas idénticas de la tabla según los parámetros especificados. Se parece a esto:

Además, puede seleccionar campos adicionales para que coincidan con varias líneas a la vez.

Para seleccionar entradas duplicadas, debe expandir la lista de solicitudes y crear una nueva carpeta allí. A continuación, en la ventana "Nueva consulta", seleccione la línea "Buscar registros duplicados". A continuación debes seguir las instrucciones del Maestro.

Registros sin subordinados

Este es el último tipo de consulta disponible en el modo Maestro - Registros sin Esclavos.

En este caso, solo se seleccionan aquellos valores que no están involucrados en ningún campo de tablas y consultas, pero que ya han sido creados.

Este tipo es relevante sólo en los casos en que existen varias bases de datos.

Estos cuatro tipos de consultas son un punto de partida para trabajar con elementos complejos, pero facilitan la comprensión de cómo crear una consulta en la base de datos. Datos de acceso.

Funciones de consulta en MS Access

Averigüemos por qué necesita realizar los pasos descritos anteriormente. La tarea de todo simple y consultas complejas V Acceder al SGBD es como sigue:

  • Recopilar los datos necesarios en tablas, luego visualizarlos, editarlos y agregar nuevos valores.
  • Excelente material fuente para preparar todo tipo de formularios de informes.
  • Realización de procedimientos de conteo matemático y estadístico sobre conjuntos de datos completos con los resultados mostrados en pantalla (valor promedio, suma, desviación, totales).

Solicitud de muestra

Este tipo de trabajo de base de datos es complejo porque requiere la participación de múltiples tablas.

Es necesario que todas las tablas tengan campos clave comunes. De lo contrario, la operación no será posible.

Repasemos cómo crear una consulta de selección en Access. Primero debe crear una consulta simple con la selección de los campos obligatorios. Aquí puede editar los datos para darles la forma deseada. Por cierto, los cambios realizados se trasladarán a las tablas fuente, por lo que hay que tener en cuenta este punto.

En la ventana del diseñador que se abre, se completa la ventana "Agregar tablas". Aquí debe agregar aquellas tablas o consultas de las que necesita extraer los valores originales.

Después de agregar, puede comenzar a completar las condiciones de la solicitud. Para ello necesitamos la cadena "Campo". En él debe seleccionar aquellos valores de las tablas que se mostrarán durante la solicitud.

Para completar la operación, debe hacer clic en el botón "Ejecutar".

Solicitud con parámetros

Este es otro tipo de procedimiento complejo que requerirá que el usuario tenga ciertas habilidades con las bases de datos. Una de las principales áreas de esta acción es la preparación para la creación de informes con datos a gran escala, así como la obtención de resultados resumidos. A continuación se explicará cómo crear consultas en Access 2007 utilizando el diseñador.

Debe iniciar este procedimiento de muestreo de datos creando una consulta simple para seleccionar los campos requeridos. A continuación, a través del modo Diseñador, se deberá completar el campo “Condición de Selección” y en base al valor ingresado se realizará la selección.

Por lo tanto, a la pregunta de cómo crear una consulta con un parámetro en Access, la respuesta es simple: ingrese los parámetros iniciales para la selección. Para trabajar con el Diseñador, debe utilizar el Asistente de consultas. Allí se crean datos primarios para el filtrado, que sirven como base para trabajos posteriores.

Consulta cruzada avanzada

Seguimos complicando la situación. Aún más difícil de entender es la información sobre cómo crear consultas en Access si hay varias tablas de datos. La solicitud cruzada ya se analizó anteriormente como una de las opciones para trabajar con el Maestro. Sin embargo, puede crear una solicitud similar en el modo Diseño.

Para hacer esto, haga clic en "Creador de consultas" - "Cruz".

Se abre un menú para agregar tablas de origen, así como la posibilidad de completar campos seleccionados. Las únicas cosas a las que debe prestar atención son los elementos de “operación de grupo” y “tabulación cruzada”. Deben cumplimentarse correctamente, de lo contrario el trámite no se realizará correctamente.

Las consultas cruzadas son la forma más sencilla de buscar y recuperar información de múltiples fuentes de datos, además de la capacidad de generar cuadros y gráficos.

Además, al utilizar este procedimiento, la búsqueda se completa más rápido, incluso con varias opciones de desarrollo.

Por supuesto, también existen riesgos que pueden interferir con su trabajo. Por ejemplo, al crear una consulta para ordenar una base de datos por valores de columna, el sistema genera un error. Es decir, solo está disponible la clasificación por elementos estándar: "ascendente y descendente".

En resumen, hay que decir que el usuario debe decidir cómo crear consultas en Access, utilizando el Asistente o el Diseñador. Aunque, para la mayoría de las personas que utilizan el DBMS de MS Access, la primera opción es más adecuada. Después de todo, el asistente hará todo el trabajo por sí mismo, dejando solo unos pocos clics del mouse para que el usuario seleccione las condiciones de la solicitud.

Para utilizar configuraciones avanzadas, claramente se requiere experiencia en bases de datos de nivel profesional. Si en el trabajo intervienen grandes bases de datos, es mejor ponerse en contacto con especialistas para evitar interrupciones en el DBMS y una posible pérdida de datos.

Hay un punto que está disponible sólo para programadores. Dado que el lenguaje principal del DBMS es SQL, la consulta deseada se puede escribir en forma de código de programa. Para trabajar en este modo, simplemente haga clic en la línea de la solicitud ya creada, y en el abierto Menú de contexto seleccione "Modo SQL".

En el caso más simple, la consulta implementa la selección de una tabla de los campos requeridos, los registros que cumplen con las condiciones de selección especificadas y la visualización de los resultados de la consulta.

Construir consultas de selección con condiciones de selección.

Veamos las consultas de selección en Access usando el ejemplo de recuperación de información de la tabla PRODUCTO de la base de datos de Suministro de Bienes.

Problema 1. Supongamos que necesita seleccionar una serie de características de un producto por su nombre.

  1. Para crear una consulta en la ventana de la base de datos, seleccione la pestaña de la cinta - Creación(Crear) y en el grupo. Peticiones(Consultas) haga clic en el botón Consultor de construcción(Diseño de consultas). Se abrirá una ventana de solicitud de selección vacía en el modo de diseño. SolicitudN(QueryN) y cuadro de diálogo Agregar una tabla(Mostrar tabla) (Fig. 4.2).
  2. En la ventana Agregar una tabla(Mostrar tabla) seleccione la tabla PRODUCTO y haga clic en el botón Agregar(Agregar). La tabla seleccionada se mostrará en el área del esquema de datos de consulta. Cerrar la ventana Agregar una tabla(Mostrar Tabla) presionando el botón Cerca(Cerca).

Como resultado de las acciones realizadas en la ventana del diseñador de consultas (Fig. 4.1), panel superior Aparece el esquema de datos de la consulta, que incluye las tablas seleccionadas para la consulta. En este caso, una tabla PRODUCTO. La tabla está representada por una lista de campos. La primera fila de la lista de campos de la tabla, marcada con un asterisco (*), indica el conjunto completo de campos de la tabla. El panel inferior es un formulario de solicitud que debe completarse.

Además, aparece una nueva pestaña (Herramientas de consulta | Diseño) en la cinta y se activa automáticamente (una parte de esta pestaña se muestra en la Fig. 4.3), en la que el tipo de consulta creada se resalta en color. Muestra(Seleccionar). Por lo tanto, de forma predeterminada, siempre se crea una consulta de selección. Los comandos de esta pestaña proporcionan herramientas para ejecutar acciones necesarias al crear una solicitud. Esta pestaña se abre cuando estás creando un nueva solicitud o se edita uno existente.

  1. Para eliminar cualquier tabla del esquema de datos de consulta, coloque el cursor del mouse sobre ella y presione una tecla. Para agregar - haga clic en el botón Mostrar tabla(Mostrar Tabla) en grupo Configuración de consulta Pestaña (Configuración de consulta) Trabajar con solicitudes | Constructor(Herramientas de consulta | Diseño) o ejecute el comando Agregar tabla(Mostrar tabla) en el menú contextual llamado en el diagrama de datos de solicitud.
  2. En la ventana del diseñador (Fig. 4.4), arrastre secuencialmente los campos NOMBRE_ES, PRECIO, DISPONIBILIDAD_ES de la lista de campos de la tabla PRODUCTO a las columnas del formulario de solicitud en la fila Campo(Campo).
  3. Para incluir los campos deseados de la tabla en las columnas de consulta correspondientes, puede utilizar las siguientes técnicas:
    • en la primera línea del formulario de solicitud Campo(Campo) haga clic con el mouse para que aparezca el botón de lista y seleccione el campo deseado de la lista. La lista contiene los campos de las tablas representadas en el esquema de datos de la consulta;
    • haga doble clic en el nombre del campo de la tabla en el esquema de datos de la consulta;
    • Para incluir todos los campos de la tabla, puede arrastrar o hacer doble clic en el símbolo * (asterisco) en la lista de campos de la tabla en el esquema de datos de la consulta.
  4. Si accidentalmente arrastró un campo innecesario al formulario de solicitud, elimínelo. Para hacer esto, mueva el cursor al área de etiqueta de la columna en la parte superior, donde aparecerá como una flecha negra apuntando hacia abajo, y haga clic con el botón del mouse. La columna quedará resaltada. Presione una tecla o ejecute un comando Eliminar columnas(Eliminar columnas) en grupo Configuración de consulta(Configuración de consulta).
  5. En línea Salida en pantalla(Mostrar) marque los campos, de lo contrario no se incluirán en la tabla de consulta.
  6. escribe en la linea Condiciones de selección(Criterios) nombre del producto, como se muestra en el formulario de solicitud en la Fig. 4.4. Dado que la expresión en la condición de selección no contiene un operador, el operador = se utiliza de forma predeterminada. Usado en expresión valor de texto se ingresa entre comillas dobles, que se agregan automáticamente.
  7. Ejecute la consulta haciendo clic en el botón Ejecutar o en el botón Ver en el grupo Resultados. Aparecerá en pantalla una ventana de consulta en modo tabla con una entrada de la tabla PRODUCTO que cumpla con las condiciones de selección especificadas.

COMENTARIO
La ventana de consulta en la vista de tabla es similar a la ventana de vista de tabla de la base de datos. A través de algunas tablas de consulta, se pueden realizar cambios en los datos de la tabla base subyacente a la consulta. Una consulta vista en la vista Hoja de datos, a diferencia de una tabla de base de datos de Access 2010, no tiene una columna Haga clic para agregar(Haga clic para agregar), diseñado para cambiar la estructura de la tabla. En este modo, en la pestaña de la cinta hogar(Inicio) están disponibles los mismos botones que al abrir una tabla de base de datos.

  1. Si cometió una imprecisión al ingresar el nombre de un producto complejo, el producto no se encontrará en la tabla. Uso de operadores comodín: asterisco (*) y signo de interrogación (?) (estándar ANSI-89, utilizado para consultas predeterminadas) o signo de porcentaje (%) y guión bajo (_) (ANSI-92, recomendado como estándar para SQL Server) , simplifica la búsqueda de las cadenas requeridas y evita muchos errores. Introduzca Corpus* o Corpus% en lugar del nombre completo del producto. Complete la solicitud. Si en el campo nombre del producto un valor comienza con la palabra “Caso”, el resultado de la solicitud será el mismo que en el caso anterior. Después de ejecutar la consulta, la expresión ingresada se complementará con el operador Me gusta "Cuerpo*". Este operador permite utilizar caracteres comodín al buscar en campos de texto.
  2. Si necesita encontrar varios productos, utilice el operador In. Le permite verificar la igualdad con cualquier valor de la lista, que se especifica entre paréntesis. Escriba en la línea de condiciones de selección (“Caja MiniTower”; “HDD Maxtor 20GB”; “FDD 3.5″). La tabla de consulta mostrará tres filas. La declaración In no permite caracteres comodín.
  3. Guarde su solicitud haciendo clic en la pestaña Archivo(Archivo) y ejecutando el comando Ahorrar(Ahorrar). En la ventana Preservación(Guardar como) ingrese el nombre de la solicitud Ejemplo1. Tenga en cuenta que el nombre de la consulta no debe coincidir no sólo con los nombres de las consultas existentes, sino también con los nombres de las tablas de la base de datos.
  4. Cierre la solicitud actual usando el comando del menú contextual Cerca(Cerrar) o haciendo clic en el botón de la ventana de consulta Cerca(Cerca).
  5. Ejecute una consulta guardada resaltando la consulta en el panel de navegación y seleccionando el comando en el menú contextual Abierto(Abierto).
  6. Para editar una solicitud, selecciónela en el área de navegación y ejecute el comando en el menú contextual Constructor(Vista de diseño).

Tarea 2. Supongamos que necesita seleccionar bienes cuyo precio no supere los 1000 rublos y el IVA no supere el 10%, y también seleccionar bienes cuyo precio sea más de 2500 rublos. El resultado debe contener el nombre del producto (NAIM_TOV), su precio (PRICE) y el IVA (RATE_VAT).

  1. Cree una nueva consulta en modo diseño, agregue la tabla PRODUCTO. En la ventana del diseñador (Fig. 4.5), arrastre secuencialmente los campos NOMBRE_IT, PRECIO, TASA_IVA de la lista de campos de la tabla PRODUCTO al formulario de solicitud.
  2. Escríbelo Condiciones de selección(Criterios), como se muestra en el formulario de solicitud en la Fig. 4.5. Se realiza una operación AND lógica entre condiciones escritas en la misma línea. Se realiza una operación OR lógica entre condiciones escritas en diferentes líneas.
  3. Complete la solicitud, haga clic en el botón Ejecutar(Correr) en el grupo resultados(Resultados). Aparecerá en pantalla una ventana de consulta en modo tabla con los registros de la tabla PRODUCTO que cumplen con las condiciones de selección especificadas.
  4. Guarde la solicitud ejecutando el comando apropiado en el menú contextual de la solicitud, que se llama cuando coloca el cursor en el encabezado de la solicitud. Dale un nombre Ejemplo2.

Problema 3. Supongamos que necesitamos seleccionar todas las facturas para un período determinado. El resultado debe contener el número de factura (NOM_NAK), código de almacén (CODE_SC), fecha de envío (DATE_SHIP) y el costo total de la mercancía enviada (SUMMA_INKL).

  1. Cree una nueva consulta en la vista Diseño, agregue la tabla FACTURA. En la ventana del diseñador, arrastre secuencialmente todos los campos necesarios de la lista de campos de la tabla FACTURA al formulario de solicitud.
  2. Para el campo DATE_OTGR en la línea Condiciones de selección(Criterios) escribir Entre #01/11/2008# Y #03/31/2008#. El operador Entre especifica un intervalo de fechas (en ANSI-92, se utiliza el signo # en su lugar comillas simples'). Además, este operador le permite especificar un intervalo para un valor numérico.

Para reforzar esto, mira el vídeo tutorial:

Puede crear bases de datos, tablas, formularios y otros informes en MS Access. Este artículo ayudará al usuario a ejecutar consultas SQL en MS Access. Puede ejecutar las mismas consultas que se utilizan en SQL para recuperar datos de una base de datos. Este artículo está dirigido a usuarios que recién comienzan a aprender MS Access y desean ejecutar consultas SQL en MS Access. La única condición necesaria antes de comenzar es que tenga acceso a la base de datos utilizada en la organización.

Pasos


Que necesitarás

  • El usuario debe tener acceso a la base de datos de la organización.
  • El usuario puede ponerse en contacto con el soporte tecnológico antes de realizar consultas a través de MS Access.

Información del artículo

Esta página ha sido vista 4443 veces.

¿Te resultó útil este artículo

Acceder al SGBD

acceso Microsoft es un DBMS de tipo relacional, en el que todas las herramientas y capacidades típicas de sistemas modernos gestión de base de datos. Una base de datos relacional facilita la búsqueda, el análisis, el mantenimiento y la protección de los datos porque se almacenan en un solo lugar. Acceso traducido del inglés significa "acceso". MS Access es uno de los DBMS más potentes, flexibles y fáciles de usar. Puede crear la mayoría de las aplicaciones sin escribir una sola línea de programa, pero si necesita crear algo muy complejo, MS Access proporciona un potente lenguaje de programación: la aplicación Visual Basic.

La popularidad del DBMS de Microsoft Access se debe a las siguientes razones:

La accesibilidad y la claridad permiten que Access sea uno de los mejores sistemas crear rápidamente aplicaciones de gestión de bases de datos;

Posibilidad de utilizar tecnología OLE;

Integración con paquete de microsoft Oficina;

Soporte completo para tecnologías web;

La tecnología visual te permite ver constantemente los resultados de tus acciones y corregirlos;

Disponibilidad de un gran conjunto de "maestros" para desarrollar objetos.

Los principales tipos de objetos con los que trabaja el programa son: tabla, consulta, formulario, informe, página, macro, módulo.

Una tabla es un objeto que se utiliza para almacenar datos. Cada tabla incluye información sobre un objeto de un determinado tipo. La tabla contiene campos (columnas) que almacenan varios tipos de datos y registros (filas). Cada tabla debe tener una clave principal definida (un campo que tiene un valor único para cada registro, o varios campos cuyo valor combinado es único para cada registro), que es un identificador único para cada registro de la tabla.

Para aumentar la velocidad de acceso a los datos, los campos de la tabla individuales (o un conjunto de ellos) pueden declararse índices. Un índice es una herramienta que acelera la búsqueda y clasificación en una tabla mediante el uso de valores clave para garantizar la unicidad de las filas de la tabla. La clave principal de la tabla se indexa automáticamente. No está permitido crear índices en campos con algunos tipos de datos.

Una consulta es un objeto que permite al usuario recuperar los datos deseados de una o más tablas. Las consultas también pueden crear nuevas tablas utilizando datos de una o más tablas que ya existen. El tipo de consulta más común es una consulta de recuperación. Una consulta de selección selecciona datos de una o más tablas según condiciones específicas y luego los muestra en el orden deseado.

Un formulario es un objeto diseñado principalmente para ingresar datos, mostrarlos en la pantalla o controlar el funcionamiento de una aplicación.

Un informe es un objeto diseñado para crear un documento que posteriormente puede imprimirse o incluirse en un documento en otra aplicación.

base de programación de desarrollo visual

Página: se utiliza para acceder a datos en la base de datos de Access actual.

Una macro es un objeto que es una descripción estructurada de una o más acciones que Access debe realizar en respuesta a un evento específico.

Un módulo es un objeto que contiene programas de Microsoft Visual Basic que le permiten dividir un proceso en acciones más pequeñas y detectar errores que no se pudieron encontrar usando macros.

El DBMS se inicia desde Inicio - Programas - Microsoft Access. Ejecute el comando Archivo - Nuevo.

La interfaz para trabajar con objetos de bases de datos está unificada. Para cada uno de ellos, se proporcionan modos de funcionamiento estándar: Crear (crear una estructura de objeto); Constructor (cambiando la estructura de los objetos); Abrir (Ver, Ejecutar, diseñado para trabajar con objetos de bases de datos).

Lenguaje de consulta SQL

SQL (Lenguaje de Consulta Estructurado) desde 1986. es un lenguaje de base de datos relacional estándar. En particular, se utiliza en aplicaciones Access y Excel.

SQL es un lenguaje lógico de información diseñado para describir datos almacenados, recuperar datos almacenados y modificar datos. Inicialmente, SQL era la forma principal en que un usuario trabajaba con una base de datos y era un pequeño conjunto de comandos (operadores) que permitían crear tablas, agregar nuevos registros a las tablas, recuperar registros de las tablas, eliminar registros y cambiar las estructuras de las tablas. A medida que SQL se ha vuelto más complejo, se ha convertido en un lenguaje de programación más orientado a aplicaciones y los usuarios ahora pueden utilizar creadores de consultas visuales.

El lenguaje SQL es una colección de operadores:

Operadores del lenguaje de definición de datos (DDL);

operadores de manipulación de datos (Lenguaje de manipulación de datos, DML);

operadores de definición de acceso a datos (Data Control Language, DCL);

Operadores de lenguaje de control de transacciones (TCL).

Las consultas en MS Access se guardan e implementan utilizando el lenguaje SQL. Aunque la mayoría de las consultas se pueden crear gráficamente (consultas de patrón), se almacenan como sentencias SQL. En algunos casos (por ejemplo, en subconsultas), solo puedes usar SQL.

SQL es un lenguaje no procesal. Simplemente declara lo que se debe hacer y la ejecución se deja en manos del DBMS (sistema de gestión de bases de datos).

SQL utiliza lógica de tres valores. Junto con los valores booleanos tradicionales VERDADERO y FALSO, se utiliza NULL (DESCONOCIDO o SIN DATOS).

Las operaciones se realizan sobre conjuntos completos de datos, en lugar de sobre elementos individuales, como en otros lenguajes de programación.

Una consulta SQL consta de declaraciones. Cada instrucción puede contener varias oraciones.




Arriba