PDF de programación - Firebird: lenguaje de manipulación de datos (DML)

Imágen de pdf Firebird: lenguaje de manipulación de datos (DML)

Firebird: lenguaje de manipulación de datos (DML)gráfica de visualizaciones

Publicado el 8 de Enero del 2019
1.045 visualizaciones desde el 8 de Enero del 2019
74,6 KB
22 paginas
Creado hace 15a (03/09/2008)
FIREBIRD:

LENGUAJE DE
MANIPULACIÓN

DE DATOS



Firebird: Lenguaje de manipulación de datos (DML) Tema 4

FIREBIRD: LENGUAJE DE MANIPULACIÓN DE DATOS

1.- CONCEPTOS BÁSICOS...................................................................................................................1
2.- SENTENCIA SELECT......................................................................................................................2
2.1.- Cláusula SELECT........................................................................................................................2
2.2.- Cláusula FROM...........................................................................................................................3
2.3.- Cláusula WHERE........................................................................................................................5
2.4.- Cláusula GROUP BY..................................................................................................................6
2.5.- Cláusula HAVING......................................................................................................................6
2.6.- Cláusula UNION.........................................................................................................................7
2.7.- Cláusula PLAN............................................................................................................................7
2.8.- Cláusula ORDER BY..................................................................................................................7
2.9.- Cláusula ROWS...........................................................................................................................8
2.10.- Cláusula FOR UPDATE............................................................................................................8
3.- SENTENCIA INSERT.......................................................................................................................9
4.- SENTENCIA UPDATE...................................................................................................................10
5.- SENTENCIA DELETE....................................................................................................................11
6.- SENTENCIA UPDATE OR INSERT..............................................................................................12
7.-- TRANSACCIONES........................................................................................................................13
7.1.- Modelo de arquitectura multigeneracional (MGA)...................................................................14
7.2.- Las transacciones y su indentificador........................................................................................15
7.3.- Configurar transacciones...........................................................................................................16
7.3.1.- Nivel de aislamiento...........................................................................................................16
7.3.2.- Modo de acceso..................................................................................................................18
7.3.3.- Modo de resolución de bloqueos........................................................................................18
7.3.4.- Reserva de tabla..................................................................................................................18
7.4.- Sentencias de gestión de transacciones.....................................................................................19



Vicente Tejero Trueba Pag i IES Pedro Espinosa

Firebird: Lenguaje de manipulación de datos (DML) Tema 4

1.- CONCEPTOS BÁSICOS.
En Firebird la única forma de acceder a los datos es realizando una consulta. Una consulta es
una sentencia SQL que es enviada al servidor. Una sentencia SQL es una sentencia consistente en
palabras claves, frases y cláusulas con una forma determinada. Todas las operaciones de creación y
modificación de metadatos, así como el acceso a los datos se realizan mediante consultas.
Una consulta de DML especifica un conjunto de datos y una o mas operaciones a ser realizadas
sobre ellos. Además se pueden usar expresiones para transformar los datos cuando se devuelve,
almacena o se busca sobre los conjuntos de datos.

Una consulta DML define una colección de elementos de datos situados en orden de izquierda
a derecha en una o más columnas, conocidas como conjuntos. Un conjunto puede estar formado por
una o varias filas. Una tabla es en sí un conjunto cuya especificación completa está en las tablas de
sistema. El servidor de base de datos tiene sus propias consultas internas sobre las tablas de sistema
para extraer los metadatos cuando son necesarios por una consulta de cliente.

El uso mas común de las consultas es el de obtener datos para mostrar a los usuarios. Esto se
realiza mediante la sentencia SELECT. En esta sentencia se obtiene un conjunto resultado que se llama
también como dataset o recordset.

En los conjuntos se debe tener en cuenta dos conceptos: cardinalidad y grado. La cardinalidad
es el número de filas en el conjunto. Además se puede hablar de cardinalidad de una fila o cardinalidad
de un valor clave, refiriéndose a la posición de una fila dentro de un conjunto de salida ordenado. El
grado es el número de columnas en un conjunto.Podemos encontrar también el grado de una columna
como la posición de la columna dentro del conjunto de columnas en el orden de izquierda a derecha.

En Firebird se utilizan los cursores como mecanismo para recorrer los conjuntos. Cuando
realizamos una consulta se crean cursores en el lado del servidor, cursores transparentes al cliente. Se
pueden definir también cursores en la parte del cliente para utilizarlos en PSQL y ESQL.

Por último es interesante destacar que es posible usar consultas SELECT dentro de otras, en
una doble vertiente: subconsultas y tablas derivadas. Las subconsultas se usan en una columna de
salida o en la cláusula WHERE. Las tablas derivadas se usan en la cláusula FROM.

En este tema desarrollaremos las sentencias de DML, para lo que usaremos el siguiente
esquema de una base de datos muy elemental.



Vicente Tejero Trueba Pag 1 IES Pedro Espinosa



Firebird: Lenguaje de manipulación de datos (DML) Tema 4
2.- SENTENCIA SELECT.
La sentencia SELECT es el método fundamental por el que los clientes obtienen conjuntos de
datos de una base de datos. Su formato general es:


SELECT

[FIRST (m)] [SKIP (n)] [[ALL] | DISTINCT ]
<lista columnas>

FROM <lista de conjuntos>
[WHERE <condicion busqueda>]
[GROUP BY <lista columnas agrupadas>]
[HAVING <condicion búsqueda>]
[UNION [DISTINCT | ALL]<expresión select>]
[PLAN <plan ejecución>]
[ORDER BY <lista columnas ordenacion>]
[ROWS <expr1> [TO <expr2>]]
[FOR UPDATE [OF col1 [col2...]] [WITH LOCK]]



2.1.- Cláusula SELECT.
La cláusula select establece cual va a ser el conjunto resultado. Sobre este conjunto se pueden
indicar los siguientes cuantificadores:

- ALL. Es el cuantificador por defecto. Indica que se incluirán todas las filas.
- DISTINCT: Este cuantificador elimina las filas duplicadas del conjunto de salida.
- FIRST (m) SKIP (n): Este cuantificador permite devolver las primeras m filas del conjunto

resultado ignorando las n iniciales. FIRST y SKIP se pueden usar juntas o cada una por
independiente.

select all cod_banco from Ban_accta -- obtiene todos los códigos de bancos
select cod_banco from Ban_accta --equivalente a la anterior
select distinct cod_banco from Ban_accta -- devuelve los códigos de bancos sin repeticiones
select first 3 skip 2 distinct cod_banco from ban_accta -- devuelve tres códigos de bancos a partir de la

segunda fila (se quitan las primeras 2) del conjunto resultado sin duplicados


- <lista de columnas> define las columnas que se devolverán en el conjunto resultado. Se

sigue la siguiente sintaxis:
<lista columnas> := <columna> [AS alias] [, <lista columnas]
<columna> := {[alias_tabla.]columna_tabla |
expresion | constante |variable_sistema | [alias_tabla.]*}



En donde se tiene que:

o AS alias. Con esto se le indica un identificador en tiempo de ejecución a una
columna, es decir, se le da otro nombre a la columna. Se debe usar cuando la
columna sea distinta de una columna_tabla para que tenga un identificador con el
que referenciarse posteriormente. Tambien se utiliza con columna_tabla para
renombrar un campo, por ejemplo, por aparecer en dos tablas de la cláusula FROM.
o alias_tabla: Es el nombre de un conjunto de datos origen o el nombre que se le
o columna_tabla: Es un identificador de columna de una tabla o vista o un argumento
o expresion: Cualquier expresión simple o compuesta. Podemos encontrar aquí

de salida de un procedimiento almacenado.

asigna en la cláusula FROM.

expresiones formadas por funciones, constantes y subconsultas escalares (aquellas
que sólo devuelven una fila con una única columna).

Vicente Tejero Trueba Pag 2 IES Pedro Espinosa

Firebird: Lenguaje de manipulación de datos (DML) Tema 4
o constante: cualquier valor literal.
o variable_sistema: cualquier variable de sistema.
o *: Indica cualquier columna



select cod_banco from bancos – se selecciona una columna de la tabla bancos
select bancos.cod_banco from bancos – se selecciona una columna de la tabla bancos usando como

select b.cod_banco from bancos b – se selecciona una columna de la tabla bancos usando el alia b

select cod_banco as codigo from bancos – se selecciona el código de banco y se cambia el

alias el identificador de la tabla

indicado en la cláusula FROM

identificador a codigo

select ‘el banco es ‘ || nom_banco as nombre from bancos – una expresión como columna
select current_date as fecha, ‘now’ as ahora, 23, cast(cod_banco
  • Links de descarga
http://lwp-l.com/pdf14796

Comentarios de: Firebird: lenguaje de manipulación de datos (DML) (0)


No hay comentarios
 

Comentar...

Nombre
Correo (no se visualiza en la web)
Valoración
Comentarios...
CerrarCerrar
CerrarCerrar
Cerrar

Tienes que ser un usuario registrado para poder insertar imágenes, archivos y/o videos.

Puedes registrarte o validarte desde aquí.

Codigo
Negrita
Subrayado
Tachado
Cursiva
Insertar enlace
Imagen externa
Emoticon
Tabular
Centrar
Titulo
Linea
Disminuir
Aumentar
Vista preliminar
sonreir
dientes
lengua
guiño
enfadado
confundido
llorar
avergonzado
sorprendido
triste
sol
estrella
jarra
camara
taza de cafe
email
beso
bombilla
amor
mal
bien
Es necesario revisar y aceptar las políticas de privacidad