SlideShare una empresa de Scribd logo
Ayudantía de Base de Datos
Trabajando con SQL
En el interior de esta guía de referencia encontrará material correspondiente al uso de
las sentencias SQL (utilizadas por Oracle), ejemplos y algunos trucos que pudieran
serle útiles a la hora de confeccionar una base de datos relacional.
Dicho lo anterior, “manos a la obra”.
Las Tablas
Como en todo orden de cosas se debe partir por el comienzo, esta guía no será
la excepción.
Cuando se quiere realizar un modelo relacional sobre algún administrador de
base de datos cualquiera, se piensa generalmente en los componentes que formarán
en conjunto la base de datos. Luego, es imposible concebir una base de datos sin la
existencia de las tablas y sus relaciones. Pues bien, la unidad a tratar en este
momento será la Tabla, cómo crearlas, qué componentes las forman, cómo se
relacionan unas con otras, cómo poblarlas con datos, cómo actualizarlas, eliminarlas y
cosas por el estilo.
CREACION DE TABLAS
Una tabla se conoce como un conjunto de datos ordenados de manera tal que
dan lugar a un significado especial sobre el conjunto de éstos. (En pocas palabras una
tabla entidad o una tabla relación). Pues bien, las líneas que a continuación se
presentan muestran cómo definir una tabla común y corriente. (Sin agregado alguno)
Sentencia: CREATE TABLE
Sintaxis:
CREATE TABLE nombre_tabla
( nombre_columna tipo_dato restriccion [,
nombre_columna2 tipo_dato restriccion,
…
nombre_columnaN tipo_dato restriccion]);
#NOTA: lo que se encuentra entre corchetes ([ ]) puede ser omitido, es decir, se puede
hacer una tabla con solo una o muchas columnas.
Antes de presentar el ejemplo del caso, se mostrarán los componentes de la
sintaxis anterior.
Tipo_dato
CHAR(tamaño) Contiene valores compuestos por letras
mayúsculas y minúsculas, incluyendo
además caracteres especiales. El tamaño
máximo permitido de valores (caracteres)
es de 255.
DATE Fecha y Hora con valores entre Enero, 1
de 4712 AC y Diciembre, 31 de 4712 DC.
LONG Similar a CHAR, pero los valores pueden
tener sobre 64k en la versión 6.0 de
Ayudantía de Base de Datos
LONG (continuación)
Oracle y hasta 2Gigabytes en la versión 7.
No se puede definir más de una columna
LONG por tabla. Tampoco se puede usar
dicha columna para hacer alguna relación
con otra tabla o para hacer una búsqueda
sobre la misma.
NUMBER(digito1, digito2) Los valores numéricos están compuestos
por los dígitos 0-9, con su signo opcional y
punto decimal. Puede tener 38 dígitos de
ancho (el punto decimal y el signo, si
existen, no son contabilizados como
dígitos)
[NOT] NULL Especifica que la columna puede o no
tomar valores nulos. ( [ ]  opcional)
Restricciones
PRIMARY KEY Identifica la unicidad de cada fila en la
tabla.
CHECK Especifica una condición que debe ser
verdadera.
FOREIGN KEY (nombre_columa)
REFERENCES
nombre_tabla (nombre_columna)
Establece y fuerza una relación la
columna de la tabla de origen y la columna
de la tabla referenciada.
[ NOT ] NULL Especifica que la columna puede o no
contener valores Nulos.
UNIQUE Especifica una columna o columnas
cuyos valores deben ser únicos dentro ed
todas las filas.
Ejemplo:
Create table Carrera
(Cod_Carrera NUMBER(6,0) NOT NULL,
Descripcion CHAR(255) NOT NULL,
CONSTRAINT PK_Carrera PRIMARY KEY (Cod_Carrera));
Create table Alumnos
(Num_matricula char(20) NOT NULL,
Nombre char(255) NOT NULL
CHECK(nombre=upper(nombre)),
Direccion char(255) NOT NULL,
Fecha_Nac DATE NOT NULL,
Telefono CHAR(20),
CIDentidad NUMBER(8,0) NOT NULL,
Digito_ver CHAR(1) NOT NULL
CHECK(Digito_ver=upper(Digito_ver)),
Carrera NUMBER(6,0) NOT NULL,
CONSTRAINT ID_Alumno PRIMARY KEY(Num_matricula),
CONSTRAINT FK_Carrera FOREIGN KEY (Carrera)
REFERENCES Carrera(Cod_Carrera));
#Nota: la instrucción CHECK se encarga de verificar que al realizarse una inserción
los campos cumplan la condición que se especifica. En el ejemplo se pide que Nombre
y Digito_ver sean ingresados en mayúsculas.
Ayudantía de Base de Datos
A continuación se muestra dos ejemplos del uso de CHECK: uno que produce error y
otro sin él.
SQL> insert into alumnos
values ('98917512', 'Claudia Andrea Luza Escobar',
'Cotacotani 234 Poblacion Sn.Jose, Arica',
TO_DATE('12-11-1978','DD-MM-YYYY'),NULL, 11111111, '1', 3515);
insert into alumnos
*
ERROR en línea 1:
ORA-02290: restricción de control (PO7.SYS_C00383) violada.
El ejemplo anterior produce un error, ya que la tabla chequea que los valores de
nombre y digito_ver sean ambos en mayúsculas, pero nombre está en una
combinación de dichos valores. Acto seguido se ve la mejora sobre el caso anterior.
SQL> insert into alumnos
values ('98917512', 'CLAUDIA ANDREA LUZA ESCOBAR',
'Cotacotani 234 Poblacion Sn.Jose, Arica',
TO_DATE('12-11-1978','DD-MM-YYYY'),NULL, 11111111, '1', 3515);
Ahora se estará preguntando cuál es la finalidad de la función TO_DATE, pues no es
más que para formatear en un estilo particular el ingreso hacia un campo DATE. Los
estilos serán vistos en entregas posteriores. (Podrá buscar información adicional de la
función TO_DATE y otras funciones en http://antarex.ucm.cl/oradoc)
#Nota: el sitio de referencia sólo es visible en el interior de los laboratorios de
computación General y Avanzado. No es visible desde el exterior de la Universidad.
Ya se habló sobre CHECK, ahora es el turno de CONSTRAINT. La cláusula Constraint
se utiliza para darle un alias (sinónimo) a la clave principal. El mayor uso es para
alivianar las tareas de modificación de las tablas o de corrección de las mismas en
casos de errores. A qué se refiere lo anterior: pues suponga que ha terminado de crear
una tabla, en la cual ha definido un conjunto de campos que le permitirán presentar la
clave primaria…, pero olvidó un detalle importante, le faltaba agregar otro campo
más... ¿Qué hace?
a) Borra la tabla completa y la hace de nuevo corrigiendo el error.
b) Intenta Borrar la restricción clave primaria, pero no tiene con qué, ni sabe cómo
hacerlo.
c) Compra una versión de Sistema Operativo nuevo. Le instala muchos juegos y se
olvida de que tiene problemas con una tabla miserable.
La opción que se recomienda seguir es b), pero cómo elimina la restricción que
primary key le presenta. Pues si recuerda el ejemplo de la tabla alumnos, se dará
cuenta que aparece una cláusula CONSTRAINT ID_Alumno. Pues como tuvo la
deferencia de agregar esa cláusula, su tarea se ha visto recompensada, ya que para
borrar una restricción que PRIMARY KEY presente sólo será necesario eliminar el
CONSTRAINT ID_Alumno y el problemas se verá solucionado. El procedimiento es el
mismo si lo que se quiere eliminar es una FOREIGN KEY.
Más adelante se verá cómo borrar restricciones como las nombradas en el párrafo
anterior.
Ayudantía de Base de Datos
¿Y qué pasa con FOREIGN KEY (columna)
REFERENCES Nombre_tabla(nombre_columna)?
Cuando quiere crear una relación entre tablas, lo hace mediante claves foráneas. Pero
en SQL, ¿cómo lo hace?.
Gracias a las simplezas de la vida, la tarea no es tan tétrica. Como recordará el
ejemplo de la tabla alumnos aparece la instrucción FOREIGN KEY (Carrera)
REFERENCES Carrera(Cod_Carrera) luego de la definición del CONSTRAINT
FK_Carrera de la tabla. Pues bien, dicha instrucción señala que el campo Carrera, de
la tabla Alumnos, es clave foránea y está relacionada con el campo Cod_Carrera de la
tabla Carrera.
#Nota: recuerde que la columna de la tabla referenciada debe ser clave primaria en la
misma (tabla referenciada).
#Nota2: como recomendación se crea primero las tablas en las cuales no es necesario
el uso de claves foráneas. Luego se ingresan unos pocos datos en dichas tablas. Acto
seguido comience a crear las tablas que llevan claves foráneas. SIEMPRE use
CONSTRAINT en sus tablas. Más adelante se muestra otra forma de agregar
CONSTRAINT con claves primarias y foráneas. También verá allí otra recomendación
sobre el orden de creación de las tablas.
MODIFICACION de la estructura de las Tablas
Sentencia: ALTER TABLE
Sintaxis:
ALTER TABLE Nombre_Tabla
ADD (Nombre_columna tipo_dato restricción);
ALTER TABLE Nombre_Tabla
MODIFY (Nombre_columna Nuevo_tipo_dato Nueva_restricción);
ALTER TABLE Nombre_Tabla
DROP CONSTRAINT Nombre_Constraint;
La primera sintaxis mencionada sirve para agregar campos o restricciones tipo
FOREIGN KEY o PRIMARY KEY.
La segunda, sirve para modificar un campo EXISTENTE en la tabla.
La tercera, se utiliza sólo para eliminar restricciones del tipo FOREIGN KEY o
PRIMARY KEY.
¿Cómo agregar restricciones a una tabla?
Para agregar clave principal use la siguiente estructura de instrucción:
Alter table nombre_tabla
Add Constraint Nombre_Constraint
PRIMARY KEY (Nombre_columna [, Nombre_Columna2, …]);
#Nota: como siempre, lo que está entre corchetes ([ ])se puede obviar.
Ayudantía de Base de Datos
Para agregar una clave foránea se utiliza el siguiente formato en la instrucción:
Alter table nombre_tabla
Add Constraint Nombre_Constraint
FOREIGN KEY (Nombre_columna)
REFERENCES Nombre_Tabla(Nombre_Columna_Tabla);
#Recomendaciones: una recomendación de creación de tablas es la siguiente: cree
todas las tablas, sin utilizar la definición de claves primarias ni foráneas. A lo mucho
utilice las restricciones CHECK y [NOT] NULL. Luego cree todas las claves primarias
en las tablas utilizando la instrucción ALTER TABLE con la cláusula ADD
CONSTRAINT. Cuando haya terminado el proceso anterior haga lo mismo con las
claves foráneas. Le aseguro que se ahorra un 50% de los dolores de cabeza más
comunes por trabajar con tablas relacionales.
Ejemplos:
ALTER TABLE Alumnos
ADD (Signo_Zodiaco CHAR(40) Not NULL);
ALTER TABLE Alumnos
MODIFY (Signo_Zodiaco CHAR(20) NOT NULL);
ALTER TABLE Empleados
ADD CONSTRAINT PK_Empleados
PRIMARY KEY (codigo_empleado);
ALTER TABLE Empleados
ADD CONSTRAINT FK_Departamentos
FOREIGN KEY (depto)
REFERENCES Departamento (codigo_departamento);
#Nota: el campo depto que se menciona en la última instrucción corresponde a la
tabla Empleados, mientras que código_departamento corresponde a la tabla
Departamento.
¿Cómo ver la estructura de una tabla en particular?
Cuando haya creado una tabla es probable que quiera saber cómo quedó constituída.
Pues bien, existe una instrucción que le permite ver la estructura de su tabla en forma
simple. Se ha resaltado el verbo ver, ya que sólo le permite visualizar. No sirve para
hacer cambios.
Instrucción: Describe
Sintaxis: Describe Nombre_Tabla;
Desc Nombre_Tabla;
El segundo es abreviado y sirve de igual manera.
Ayudantía de Base de Datos
Ejemplo:
SQL> desc alumnos;
Nombre ¿Nulo? Tipo
------------------------------- -------- -----
NUM_MATRICULA NOT NULL CHAR(20)
NOMBRE NOT NULL CHAR(255)
DIRECCION NOT NULL CHAR(255)
FECHA_NAC NOT NULL DATE
TELEFONO CHAR(20)
CIDENTIDAD NOT NULL NUMBER(8)
DIGITO_VER NOT NULL CHAR(1)
CARRERA NOT NULL NUMBER(6)
Como puede apreciar, no aparecen las restricciones ni cosas de ese estilo en cada
descripción de la tabla, por lo tanto es recomendable que maneje esa información en
papel o en algún archivo para no tener problemas futuros.
ELIMINACIÓN de Tablas
La eliminación de tablas se lleva a efecto por medio de la instrucción o sentencia
DROP TABLE.
Sentencia: DROP TABLE
Sintaxis: DROP TABLE Nombre_Tabla;
Con lo anterior se produce la eliminación de la tabla mencionada en Nombre_Tabla.
Para eliminar una tabla es necesario que primero exista.
Suponga que quiere eliminar la tabla alumnos. Pues nada más bastará ejecutar una
instrucción como la siguiente: DROP TABLE alumnos;
Con lo anterior, ha sido eliminada la tabla y con ella la relación que existía con la tabla
Carrera.
#Nota: con respecto a lo dicho en el párrafo anterior se puede concluir que puede ser
eliminada una tabla que tiene relaciones salientes, es decir, aquella en la cual se hace
referencia a otra tabla. El contra ejemplo es la eliminación de la tabla carrera. Hacia
ella se está haciendo una referencia. Veamos qué pasaría si intentara borrarla antes
de haber borrado la tabla alumnos.
SQL> drop table carrera;
drop table carrera
*
ERROR en línea 1:
ORA-02266: claves únicas/primarias en la tabla referidas por
claves ajenas activadas
Si da cuenta sólo se puede hacer eliminación directa cuando la tabla sólo hace
referencia a otras tablas, mientras que a ella no la referencia ninguna otra.
Ayudantía de Base de Datos
La solución es un tanto engorrosa si lo que se quiere es eliminar es la tabla
referenciada. En primer lugar se tendría que eliminar la restricción de clave foranea
desde la tabla alumnos; luego ya se está en condiciones de poder eliminar la tabla
carrera.
Vea el ejemplo de la secuencia que debería utilizar en el caso:
SQL> alter table alumnos
2 drop CONSTRAINT FK_carrera;
Tabla modificada.
SQL> drop table carrera;
Tabla borrada.
En el ejemplo anterior puede rescatar algunas cosas: Primero, ¿recuerda la pregunta
de cómo eliminar las restricciones de una tabla?. Pues el ejemplo de la primera
instrucción (alter table) le da la respuesta. Ahora se dará cuenta del porqué es
recomendable utilizar la cláusula CONSTRAINT en la definición de las Tablas.
Antes de abandonar por completo esta parte referente a las Tablas y sus estructuras
me gustaría destacar otro formato para la creación de tablas a partir de otras tablas.
Sentencia: CREATE TABLE
Sintaxis Modificada:
CREATE TABLE Nombre_Tabla
AS Select Columna1, Columna2, …, ColumnaN
FROM TABLA_ORIGEN [
WHERE CONDICION];
#NOTA: Como siempre, recuerde que lo que está entre corchetes puede ser obviado
en el caso que no lo necesite.
En resumen de la instrucción anterior, la tabla se crea a partir de la selección de
algunas o todas las columnas de una tabla de origen. Esto no es tan rígido, ya que se
pueden hacer tablas realizando selecciones a varias tablas con sus columnas
respectivas. Se verá mejor este ejemplo en entregas posteriores.
TRABAJANDO con los DATOS
Ya se ha mostrado los aspectos referentes a las tablas y sus estructuras, así
como también se ha mencionado el cómo relacionarlas. Ahora es tiempo de ir
probando cómo llenar, actualizar y eliminar datos desde las tablas. Comenzaremos
esta parte con el ingreso de datos.
Sentencia: INSERT
Sintaxis:
INSERT INTO Nombre_Tabla
(Columna1, Columna2, …, ColumnaN)
VALUES (Valor1, Valor2, …, ValorN);
Antes de seguir vea la tabla que continuación presenta la información del cómo se
introducen datos para los distintos tipos de éstos.
Ayudantía de Base de Datos
CHAR ‘Claudia Andrea Luza Escobar’
En el ejemplo, los contenidos del tipo CHAR van siempre entre
comilla simple.
NUMBER -10.5
El tipo NUMBER soporta el uso de signos, y punto decimal. No
necesita que se incluya delimitador en él, como en el caso de CHAR.
DATE ‘22-04-2000’
El dato de tipo Fecha se delimira al igual que el de tipo CHAR, con
comilla simple.*
LONG ‘Hola Mundo, esta es la ayudantía de Base de datos’
Tal y como el dato CHAR y DATE, LONG también se delimita con
comilla simple.
*Con respecto al tipo DATE, suele utilizarse la función TO_DATE para formatear de
mejor manera el ingreso de datos de ese tipo.
TO_DATE(fecha_a_ingresar, formato)
Donde
Fecha_a_ingresar, es una cadena de carácter con una fecha válida.
Formato, es la máscara de entrada que utilizará la inserción.
EJEMPLO:
SQL> insert into ejemplo (fecha)
2 values (TO_DATE('12/12/2000','DD/MM/YYYY'));
1 fila creada.
SQL> insert into ejemplo (fecha)
2 values (To_date('14-11-1977','DD-MM-YYYY'));
1 fila creada.
Con respecto al formato del ejemplo está dato por dos dígitos para el día (DAY), dos
para el mes (MONTH), y 4 para el año (YEAR).
ACTUALIZACIÓN de datos
Cuando el tiempo pasa es necesario que los datos cambien en algunas ocasiones.
Por ejemplo un reajuste de sueldos o algo por el estilo. A continuación se ve la
estructura de la sentencia y su sistanxis, luego un par de ejemplos.
Sentencia: UPDATE
Sintaxis:
UPDATE Nombre_tabla
Set Campo1 = Valor1, Campo2= Valor2, …, CampoN=ValorN
[WHERE CONDICIÓN];
EJEMPLOS
Ayudantía de Base de Datos
SQL> update empleados
2 set sueldo = sueldo * 1.20
3 where tipo = 'secretaria';
15 filas actualizadas.
En el ejemplo anterior, se ha incrementado el sueldo de las secretarias en un 20%.
SQL> update alumnos
2 set direccion = 'Camilo Huerta #234, Pobl. Chile Arica'
3 where num_matricula = '98917512';
1 fila actualizada.
Este ejemplo presenta sólo un cambio de datos normal.
ELIMINACION de DATOS
Como en todo orden de cosas, algunas se gastan y se obsolecen y por lo tanto es
mejor eliminarlas. En los datos es la misma historia. Para eliminar datos se utiliza la
sentencia Delete que permite borrar algunas filas o todas las filas de una tabla
dependiendo de la condición que se le dé.
Sentencia: DELETE
Sintaxis:
DELETE FROM Nombre_Tabla
[ WHERE CONDICION];
Dependiendo de la condición especificada es la cantidad de datos que se eliminan. Si
no se utiliza la cláusula WHERE CONDICIÓN se corre el riesgo de eliminar todos los
datos de la tabla.
#NOTA: una instrucción como DELETE FROM alumnos; borra todos los datos de la
tabla alumnos, pero sólo los datos. La estructura de la tabla se mantiene intacta.
Dicho lo anterior, vamos a los ejemplos:
SQL> delete from ejemplo;
4 filas borradas.
SQL> delete from alumnos
2 where num_matricula = '98917512';
1 fila borrada.
Ya con esto se finaliza la primera entrega de información con respecto a lo de SQL.
Espero que les haya sido de ayuda y nos estaremos encontrando luego con otra de
estas documentaciones.
Recuerda visitar: http://antarex.ucm.cl/oradoc para más información.
Ayudantía de Base de Datos
SQL> update empleados
2 set sueldo = sueldo * 1.20
3 where tipo = 'secretaria';
15 filas actualizadas.
En el ejemplo anterior, se ha incrementado el sueldo de las secretarias en un 20%.
SQL> update alumnos
2 set direccion = 'Camilo Huerta #234, Pobl. Chile Arica'
3 where num_matricula = '98917512';
1 fila actualizada.
Este ejemplo presenta sólo un cambio de datos normal.
ELIMINACION de DATOS
Como en todo orden de cosas, algunas se gastan y se obsolecen y por lo tanto es
mejor eliminarlas. En los datos es la misma historia. Para eliminar datos se utiliza la
sentencia Delete que permite borrar algunas filas o todas las filas de una tabla
dependiendo de la condición que se le dé.
Sentencia: DELETE
Sintaxis:
DELETE FROM Nombre_Tabla
[ WHERE CONDICION];
Dependiendo de la condición especificada es la cantidad de datos que se eliminan. Si
no se utiliza la cláusula WHERE CONDICIÓN se corre el riesgo de eliminar todos los
datos de la tabla.
#NOTA: una instrucción como DELETE FROM alumnos; borra todos los datos de la
tabla alumnos, pero sólo los datos. La estructura de la tabla se mantiene intacta.
Dicho lo anterior, vamos a los ejemplos:
SQL> delete from ejemplo;
4 filas borradas.
SQL> delete from alumnos
2 where num_matricula = '98917512';
1 fila borrada.
Ya con esto se finaliza la primera entrega de información con respecto a lo de SQL.
Espero que les haya sido de ayuda y nos estaremos encontrando luego con otra de
estas documentaciones.
Recuerda visitar: http://antarex.ucm.cl/oradoc para más información.

Más contenido relacionado

La actualidad más candente

RESUMEN VISTO EN TICS III
RESUMEN VISTO EN TICS IIIRESUMEN VISTO EN TICS III
RESUMEN VISTO EN TICS III
Jonathan Rosero
 
TECNOLOGIA
TECNOLOGIATECNOLOGIA
TECNOLOGIA
Monica Velez
 
Consultas
ConsultasConsultas
Consultas
elena valiente
 
Excel Básico 2007
Excel Básico 2007Excel Básico 2007
Excel Básico 2007
rosaldounid
 
Contenidos curso excel
Contenidos curso excelContenidos curso excel
Contenidos curso excel
Mayemef
 
Clase 3 El lenguaje DML de SQL
Clase 3 El lenguaje DML de SQLClase 3 El lenguaje DML de SQL
Clase 3 El lenguaje DML de SQL
José Ricardo Tillero Giménez
 
Apuntes excel 2010 jun2012
Apuntes excel 2010 jun2012Apuntes excel 2010 jun2012
Apuntes excel 2010 jun2012
Angeles Merino Basurto
 
Filtros
FiltrosFiltros
Filtros
Jeck Jerp
 
Creando Tablas
Creando TablasCreando Tablas
Creando Tablas
jameszx
 
Tabla de access 2010
Tabla de access 2010Tabla de access 2010
Tabla de access 2010
jefersonlibardo
 
IntroducióN A Microsoft Excel 2007
IntroducióN A Microsoft Excel 2007IntroducióN A Microsoft Excel 2007
IntroducióN A Microsoft Excel 2007Martin Zanabria
 
Adrian .
Adrian .Adrian .
Adrian .
Adrian Horna
 
Manual intermedio parte 1excel
Manual intermedio parte 1excel Manual intermedio parte 1excel
Manual intermedio parte 1excel
AliciaDominguezGutie
 

La actualidad más candente (17)

RESUMEN VISTO EN TICS III
RESUMEN VISTO EN TICS IIIRESUMEN VISTO EN TICS III
RESUMEN VISTO EN TICS III
 
TECNOLOGIA
TECNOLOGIATECNOLOGIA
TECNOLOGIA
 
Consultas
ConsultasConsultas
Consultas
 
Excel Básico 2007
Excel Básico 2007Excel Básico 2007
Excel Básico 2007
 
Contenidos curso excel
Contenidos curso excelContenidos curso excel
Contenidos curso excel
 
Clase 3 El lenguaje DML de SQL
Clase 3 El lenguaje DML de SQLClase 3 El lenguaje DML de SQL
Clase 3 El lenguaje DML de SQL
 
Apuntes excel 2010 jun2012
Apuntes excel 2010 jun2012Apuntes excel 2010 jun2012
Apuntes excel 2010 jun2012
 
Unidad iii terminada
Unidad iii  terminadaUnidad iii  terminada
Unidad iii terminada
 
Entorno exel2010
Entorno exel2010Entorno exel2010
Entorno exel2010
 
Filtros
FiltrosFiltros
Filtros
 
Creando Tablas
Creando TablasCreando Tablas
Creando Tablas
 
Tabla de access 2010
Tabla de access 2010Tabla de access 2010
Tabla de access 2010
 
IntroducióN A Microsoft Excel 2007
IntroducióN A Microsoft Excel 2007IntroducióN A Microsoft Excel 2007
IntroducióN A Microsoft Excel 2007
 
acc
accacc
acc
 
Adrian .
Adrian .Adrian .
Adrian .
 
access
accessaccess
access
 
Manual intermedio parte 1excel
Manual intermedio parte 1excel Manual intermedio parte 1excel
Manual intermedio parte 1excel
 

Destacado

Practica 1 portafolio diagnostico
Practica 1 portafolio diagnosticoPractica 1 portafolio diagnostico
Practica 1 portafolio diagnostico
Veronica Trejo
 
Casa del tesoro web quest (prepositions)
Casa del tesoro web quest (prepositions)Casa del tesoro web quest (prepositions)
Casa del tesoro web quest (prepositions)
UNEFM
 
Aprendizaje significativo
Aprendizaje significativoAprendizaje significativo
Aprendizaje significativoClaudia_Medina
 
4HEALTH MISSÃO & CURA SUMÁRIO
4HEALTH MISSÃO & CURA SUMÁRIO4HEALTH MISSÃO & CURA SUMÁRIO
4HEALTH MISSÃO & CURA SUMÁRIO
Gerson Pinto
 
Presentacion de negocios
Presentacion de negociosPresentacion de negocios
Presentacion de negocios
www.sitio360.com
 
Oaxaseotest, posicionando en buscadores
Oaxaseotest, posicionando en buscadoresOaxaseotest, posicionando en buscadores
Oaxaseotest, posicionando en buscadores
Luis Enrique Morales Ruiz
 
Padre Nuestro del Misionero Laurista (juldim
Padre Nuestro del Misionero Laurista (juldimPadre Nuestro del Misionero Laurista (juldim
Padre Nuestro del Misionero Laurista (juldimEntregarsePorAmor
 
I ENCUENTRO MISIONERO, JUVENIL - GUANARE - EDO- PORTUGUESA
I ENCUENTRO MISIONERO, JUVENIL - GUANARE - EDO- PORTUGUESAI ENCUENTRO MISIONERO, JUVENIL - GUANARE - EDO- PORTUGUESA
I ENCUENTRO MISIONERO, JUVENIL - GUANARE - EDO- PORTUGUESA
EntregarsePorAmor
 
4.7.2 utilidad de excel e importancia
4.7.2 utilidad de excel e importancia4.7.2 utilidad de excel e importancia
4.7.2 utilidad de excel e importancialoledark
 
Deontología Aplicada a la Educación
Deontología Aplicada a la Educación Deontología Aplicada a la Educación
Deontología Aplicada a la Educación
Keyla Suarez
 
Código orgánico tributario
Código orgánico tributarioCódigo orgánico tributario
Código orgánico tributario
Keyla Suarez
 
CAPITULO 3: Importancia de entender al comprador
CAPITULO 3: Importancia de entender al compradorCAPITULO 3: Importancia de entender al comprador
CAPITULO 3: Importancia de entender al comprador
Brayan Barboza Torrez
 
NF-e Comércio - Solução para Gerenciamento de Cupons Fiscais
NF-e Comércio - Solução para Gerenciamento de Cupons FiscaisNF-e Comércio - Solução para Gerenciamento de Cupons Fiscais
NF-e Comércio - Solução para Gerenciamento de Cupons Fiscais
JeW Informática
 
Aula 1 - Produção em Vídeo - arthur william
Aula 1 - Produção em Vídeo - arthur williamAula 1 - Produção em Vídeo - arthur william
Aula 1 - Produção em Vídeo - arthur william
Arthur William
 
4.7.5 actualizacion del blog
4.7.5 actualizacion del blog4.7.5 actualizacion del blog
4.7.5 actualizacion del blogloledark
 

Destacado (20)

Practica 1 portafolio diagnostico
Practica 1 portafolio diagnosticoPractica 1 portafolio diagnostico
Practica 1 portafolio diagnostico
 
Tai community manager
Tai community manager Tai community manager
Tai community manager
 
Casa del tesoro web quest (prepositions)
Casa del tesoro web quest (prepositions)Casa del tesoro web quest (prepositions)
Casa del tesoro web quest (prepositions)
 
Media kit Travel Blog & Project Space Elena Paschinger www.creativelena.com
Media kit Travel Blog & Project Space Elena Paschinger www.creativelena.comMedia kit Travel Blog & Project Space Elena Paschinger www.creativelena.com
Media kit Travel Blog & Project Space Elena Paschinger www.creativelena.com
 
Aprendizaje significativo
Aprendizaje significativoAprendizaje significativo
Aprendizaje significativo
 
4HEALTH MISSÃO & CURA SUMÁRIO
4HEALTH MISSÃO & CURA SUMÁRIO4HEALTH MISSÃO & CURA SUMÁRIO
4HEALTH MISSÃO & CURA SUMÁRIO
 
Di asovczech
Di asovczechDi asovczech
Di asovczech
 
Presentacion de negocios
Presentacion de negociosPresentacion de negocios
Presentacion de negocios
 
Oaxaseotest, posicionando en buscadores
Oaxaseotest, posicionando en buscadoresOaxaseotest, posicionando en buscadores
Oaxaseotest, posicionando en buscadores
 
Padre Nuestro del Misionero Laurista (juldim
Padre Nuestro del Misionero Laurista (juldimPadre Nuestro del Misionero Laurista (juldim
Padre Nuestro del Misionero Laurista (juldim
 
I ENCUENTRO MISIONERO, JUVENIL - GUANARE - EDO- PORTUGUESA
I ENCUENTRO MISIONERO, JUVENIL - GUANARE - EDO- PORTUGUESAI ENCUENTRO MISIONERO, JUVENIL - GUANARE - EDO- PORTUGUESA
I ENCUENTRO MISIONERO, JUVENIL - GUANARE - EDO- PORTUGUESA
 
4.7.2 utilidad de excel e importancia
4.7.2 utilidad de excel e importancia4.7.2 utilidad de excel e importancia
4.7.2 utilidad de excel e importancia
 
Deontología Aplicada a la Educación
Deontología Aplicada a la Educación Deontología Aplicada a la Educación
Deontología Aplicada a la Educación
 
Código orgánico tributario
Código orgánico tributarioCódigo orgánico tributario
Código orgánico tributario
 
4H_Teaser_RJ
4H_Teaser_RJ4H_Teaser_RJ
4H_Teaser_RJ
 
CAPITULO 3: Importancia de entender al comprador
CAPITULO 3: Importancia de entender al compradorCAPITULO 3: Importancia de entender al comprador
CAPITULO 3: Importancia de entender al comprador
 
NF-e Comércio - Solução para Gerenciamento de Cupons Fiscais
NF-e Comércio - Solução para Gerenciamento de Cupons FiscaisNF-e Comércio - Solução para Gerenciamento de Cupons Fiscais
NF-e Comércio - Solução para Gerenciamento de Cupons Fiscais
 
Matemáticas la multiplicacion
Matemáticas  la multiplicacionMatemáticas  la multiplicacion
Matemáticas la multiplicacion
 
Aula 1 - Produção em Vídeo - arthur william
Aula 1 - Produção em Vídeo - arthur williamAula 1 - Produção em Vídeo - arthur william
Aula 1 - Produção em Vídeo - arthur william
 
4.7.5 actualizacion del blog
4.7.5 actualizacion del blog4.7.5 actualizacion del blog
4.7.5 actualizacion del blog
 

Similar a Trabajando con sql (parte 1)

SENTENCIAS DE SQL SERVER
SENTENCIAS DE SQL SERVERSENTENCIAS DE SQL SERVER
SENTENCIAS DE SQL SERVER
DeysiDelgadoSeclen
 
Tablas y tipos de datos
Tablas y tipos de datosTablas y tipos de datos
Tablas y tipos de datos
Marleny Pretell Silva
 
DDL - Lenguaje de definición de datos
DDL - Lenguaje de definición de datosDDL - Lenguaje de definición de datos
DDL - Lenguaje de definición de datos
vargasaldanajohanna
 
Sentencias Sql
Sentencias SqlSentencias Sql
Sentencias Sql
fer951
 
Ddl-Lenguaje de definición de datos
Ddl-Lenguaje de definición de datosDdl-Lenguaje de definición de datos
Ddl-Lenguaje de definición de datos
vargasaldanajohanna
 
Portafolio 1 sql
Portafolio 1 sqlPortafolio 1 sql
Portafolio 1 sql
JuanKMillos
 
Ejemploddl dml-ok
Ejemploddl dml-okEjemploddl dml-ok
Ejemploddl dml-ok
BB
 
Guía de Sql - Lissette Torrealba
Guía de Sql  - Lissette TorrealbaGuía de Sql  - Lissette Torrealba
Guía de Sql - Lissette Torrealba
José Ricardo Tillero Giménez
 
Unidad IV SQL
Unidad IV SQLUnidad IV SQL
Unidad IV SQL
lissette_torrealba
 
Bdii 09 ddl_new
Bdii 09 ddl_newBdii 09 ddl_new
Bdii 09 ddl_new
Rody Paredes
 
Base de datos en sql
Base de datos en sql  Base de datos en sql
Base de datos en sql
K-rlos Pac
 
Comandos del-ddl-y-del-dml-liz
Comandos del-ddl-y-del-dml-lizComandos del-ddl-y-del-dml-liz
Comandos del-ddl-y-del-dml-lizBolivar Castillo
 
Comandos del-ddl-y-del-dml-liz
Comandos del-ddl-y-del-dml-lizComandos del-ddl-y-del-dml-liz
Comandos del-ddl-y-del-dml-liz
Adriana Escobar
 
ManualPracticoSQL.pdf
ManualPracticoSQL.pdfManualPracticoSQL.pdf
ManualPracticoSQL.pdf
Jenny29068
 
Tablas y tipos de datos
Tablas y tipos de datosTablas y tipos de datos
Tablas y tipos de datos
SuarezJhon
 
1 lab-2 -tablas-y-restricciones
1 lab-2 -tablas-y-restricciones1 lab-2 -tablas-y-restricciones
1 lab-2 -tablas-y-restricciones
Jhonatan Paul Urbina Tolenino
 
Sesión03 - Creación de objetos (Oracle)
Sesión03 - Creación de objetos (Oracle)Sesión03 - Creación de objetos (Oracle)
Sesión03 - Creación de objetos (Oracle)
José Toro
 
Diapositivas de tablas y tipos de datos
Diapositivas de tablas y tipos de datosDiapositivas de tablas y tipos de datos
Diapositivas de tablas y tipos de datos
TAPIA SILVA EVELINA
 
Sql Lenguaje Estructurado de Consulta
Sql Lenguaje Estructurado de ConsultaSql Lenguaje Estructurado de Consulta
Sql Lenguaje Estructurado de Consulta
Saludsa
 
Manual practico SQL
Manual practico SQLManual practico SQL
Manual practico SQL
Ana Aguirre
 

Similar a Trabajando con sql (parte 1) (20)

SENTENCIAS DE SQL SERVER
SENTENCIAS DE SQL SERVERSENTENCIAS DE SQL SERVER
SENTENCIAS DE SQL SERVER
 
Tablas y tipos de datos
Tablas y tipos de datosTablas y tipos de datos
Tablas y tipos de datos
 
DDL - Lenguaje de definición de datos
DDL - Lenguaje de definición de datosDDL - Lenguaje de definición de datos
DDL - Lenguaje de definición de datos
 
Sentencias Sql
Sentencias SqlSentencias Sql
Sentencias Sql
 
Ddl-Lenguaje de definición de datos
Ddl-Lenguaje de definición de datosDdl-Lenguaje de definición de datos
Ddl-Lenguaje de definición de datos
 
Portafolio 1 sql
Portafolio 1 sqlPortafolio 1 sql
Portafolio 1 sql
 
Ejemploddl dml-ok
Ejemploddl dml-okEjemploddl dml-ok
Ejemploddl dml-ok
 
Guía de Sql - Lissette Torrealba
Guía de Sql  - Lissette TorrealbaGuía de Sql  - Lissette Torrealba
Guía de Sql - Lissette Torrealba
 
Unidad IV SQL
Unidad IV SQLUnidad IV SQL
Unidad IV SQL
 
Bdii 09 ddl_new
Bdii 09 ddl_newBdii 09 ddl_new
Bdii 09 ddl_new
 
Base de datos en sql
Base de datos en sql  Base de datos en sql
Base de datos en sql
 
Comandos del-ddl-y-del-dml-liz
Comandos del-ddl-y-del-dml-lizComandos del-ddl-y-del-dml-liz
Comandos del-ddl-y-del-dml-liz
 
Comandos del-ddl-y-del-dml-liz
Comandos del-ddl-y-del-dml-lizComandos del-ddl-y-del-dml-liz
Comandos del-ddl-y-del-dml-liz
 
ManualPracticoSQL.pdf
ManualPracticoSQL.pdfManualPracticoSQL.pdf
ManualPracticoSQL.pdf
 
Tablas y tipos de datos
Tablas y tipos de datosTablas y tipos de datos
Tablas y tipos de datos
 
1 lab-2 -tablas-y-restricciones
1 lab-2 -tablas-y-restricciones1 lab-2 -tablas-y-restricciones
1 lab-2 -tablas-y-restricciones
 
Sesión03 - Creación de objetos (Oracle)
Sesión03 - Creación de objetos (Oracle)Sesión03 - Creación de objetos (Oracle)
Sesión03 - Creación de objetos (Oracle)
 
Diapositivas de tablas y tipos de datos
Diapositivas de tablas y tipos de datosDiapositivas de tablas y tipos de datos
Diapositivas de tablas y tipos de datos
 
Sql Lenguaje Estructurado de Consulta
Sql Lenguaje Estructurado de ConsultaSql Lenguaje Estructurado de Consulta
Sql Lenguaje Estructurado de Consulta
 
Manual practico SQL
Manual practico SQLManual practico SQL
Manual practico SQL
 

Último

PRÁCTICAS PEDAGOGÍA.pdf_Educación Y Sociedad_AnaFernández
PRÁCTICAS PEDAGOGÍA.pdf_Educación Y Sociedad_AnaFernándezPRÁCTICAS PEDAGOGÍA.pdf_Educación Y Sociedad_AnaFernández
PRÁCTICAS PEDAGOGÍA.pdf_Educación Y Sociedad_AnaFernández
Ruben53283
 
Semana 10-TSM-del 27 al 31 de mayo 2024.pptx
Semana 10-TSM-del 27 al 31 de mayo 2024.pptxSemana 10-TSM-del 27 al 31 de mayo 2024.pptx
Semana 10-TSM-del 27 al 31 de mayo 2024.pptx
LorenaCovarrubias12
 
Testimonio Paco Z PATRONATO_Valencia_24.pdf
Testimonio Paco Z PATRONATO_Valencia_24.pdfTestimonio Paco Z PATRONATO_Valencia_24.pdf
Testimonio Paco Z PATRONATO_Valencia_24.pdf
Txema Gs
 
Sesión: El fundamento del gobierno de Dios.pdf
Sesión: El fundamento del gobierno de Dios.pdfSesión: El fundamento del gobierno de Dios.pdf
Sesión: El fundamento del gobierno de Dios.pdf
https://gramadal.wordpress.com/
 
Friedrich Nietzsche. Presentación de 2 de Bachillerato.
Friedrich Nietzsche. Presentación de 2 de Bachillerato.Friedrich Nietzsche. Presentación de 2 de Bachillerato.
Friedrich Nietzsche. Presentación de 2 de Bachillerato.
pablomarin116
 
Introducción a la ciencia de datos con power BI
Introducción a la ciencia de datos con power BIIntroducción a la ciencia de datos con power BI
Introducción a la ciencia de datos con power BI
arleyo2006
 
Semana #10-PM3 del 27 al 31 de mayo.pptx
Semana #10-PM3 del 27 al 31 de mayo.pptxSemana #10-PM3 del 27 al 31 de mayo.pptx
Semana #10-PM3 del 27 al 31 de mayo.pptx
LorenaCovarrubias12
 
PPT: El fundamento del gobierno de Dios.
PPT: El fundamento del gobierno de Dios.PPT: El fundamento del gobierno de Dios.
PPT: El fundamento del gobierno de Dios.
https://gramadal.wordpress.com/
 
Libro infantil sapo y sepo un año entero pdf
Libro infantil sapo y sepo un año entero pdfLibro infantil sapo y sepo un año entero pdf
Libro infantil sapo y sepo un año entero pdf
danitarb
 
Mapa_Conceptual de los fundamentos de la evaluación educativa
Mapa_Conceptual de los fundamentos de la evaluación educativaMapa_Conceptual de los fundamentos de la evaluación educativa
Mapa_Conceptual de los fundamentos de la evaluación educativa
TatianaVanessaAltami
 
Mauricio-Presentación-Vacacional- 2024-1
Mauricio-Presentación-Vacacional- 2024-1Mauricio-Presentación-Vacacional- 2024-1
Mauricio-Presentación-Vacacional- 2024-1
MauricioSnchez83
 
CALENDARIZACION DEL MES DE JUNIO - JULIO 24
CALENDARIZACION DEL MES DE JUNIO - JULIO 24CALENDARIZACION DEL MES DE JUNIO - JULIO 24
CALENDARIZACION DEL MES DE JUNIO - JULIO 24
auxsoporte
 
ROMPECABEZAS DE ECUACIONES DE PRIMER GRADO OLIMPIADA DE PARÍS 2024. Por JAVIE...
ROMPECABEZAS DE ECUACIONES DE PRIMER GRADO OLIMPIADA DE PARÍS 2024. Por JAVIE...ROMPECABEZAS DE ECUACIONES DE PRIMER GRADO OLIMPIADA DE PARÍS 2024. Por JAVIE...
ROMPECABEZAS DE ECUACIONES DE PRIMER GRADO OLIMPIADA DE PARÍS 2024. Por JAVIE...
JAVIER SOLIS NOYOLA
 
El fundamento del gobierno de Dios. Lec. 09. docx
El fundamento del gobierno de Dios. Lec. 09. docxEl fundamento del gobierno de Dios. Lec. 09. docx
El fundamento del gobierno de Dios. Lec. 09. docx
Alejandrino Halire Ccahuana
 
CONCLUSIONES-DESCRIPTIVAS NIVEL PRIMARIA
CONCLUSIONES-DESCRIPTIVAS NIVEL PRIMARIACONCLUSIONES-DESCRIPTIVAS NIVEL PRIMARIA
CONCLUSIONES-DESCRIPTIVAS NIVEL PRIMARIA
BetzabePecheSalcedo1
 
3° UNIDAD 3 CUIDAMOS EL AMBIENTE RECICLANDO EN FAMILIA 933623393 PROF YESSENI...
3° UNIDAD 3 CUIDAMOS EL AMBIENTE RECICLANDO EN FAMILIA 933623393 PROF YESSENI...3° UNIDAD 3 CUIDAMOS EL AMBIENTE RECICLANDO EN FAMILIA 933623393 PROF YESSENI...
3° UNIDAD 3 CUIDAMOS EL AMBIENTE RECICLANDO EN FAMILIA 933623393 PROF YESSENI...
rosannatasaycoyactay
 
INFORME MINEDU DEL PRIMER SIMULACRO 2024.pdf
INFORME MINEDU DEL PRIMER SIMULACRO 2024.pdfINFORME MINEDU DEL PRIMER SIMULACRO 2024.pdf
INFORME MINEDU DEL PRIMER SIMULACRO 2024.pdf
Alejandrogarciapanta
 
Portafolio de servicios Centro de Educación Continua EPN
Portafolio de servicios Centro de Educación Continua EPNPortafolio de servicios Centro de Educación Continua EPN
Portafolio de servicios Centro de Educación Continua EPN
jmorales40
 
FICHA DE EJERCICIOS GRECIA 1º DE LA ESO HISTORIA
FICHA DE EJERCICIOS GRECIA 1º DE LA ESO HISTORIAFICHA DE EJERCICIOS GRECIA 1º DE LA ESO HISTORIA
FICHA DE EJERCICIOS GRECIA 1º DE LA ESO HISTORIA
JavierMontero58
 
Un libro sin recetas, para la maestra y el maestro Fase 3.pdf
Un libro sin recetas, para la maestra y el maestro Fase 3.pdfUn libro sin recetas, para la maestra y el maestro Fase 3.pdf
Un libro sin recetas, para la maestra y el maestro Fase 3.pdf
sandradianelly
 

Último (20)

PRÁCTICAS PEDAGOGÍA.pdf_Educación Y Sociedad_AnaFernández
PRÁCTICAS PEDAGOGÍA.pdf_Educación Y Sociedad_AnaFernándezPRÁCTICAS PEDAGOGÍA.pdf_Educación Y Sociedad_AnaFernández
PRÁCTICAS PEDAGOGÍA.pdf_Educación Y Sociedad_AnaFernández
 
Semana 10-TSM-del 27 al 31 de mayo 2024.pptx
Semana 10-TSM-del 27 al 31 de mayo 2024.pptxSemana 10-TSM-del 27 al 31 de mayo 2024.pptx
Semana 10-TSM-del 27 al 31 de mayo 2024.pptx
 
Testimonio Paco Z PATRONATO_Valencia_24.pdf
Testimonio Paco Z PATRONATO_Valencia_24.pdfTestimonio Paco Z PATRONATO_Valencia_24.pdf
Testimonio Paco Z PATRONATO_Valencia_24.pdf
 
Sesión: El fundamento del gobierno de Dios.pdf
Sesión: El fundamento del gobierno de Dios.pdfSesión: El fundamento del gobierno de Dios.pdf
Sesión: El fundamento del gobierno de Dios.pdf
 
Friedrich Nietzsche. Presentación de 2 de Bachillerato.
Friedrich Nietzsche. Presentación de 2 de Bachillerato.Friedrich Nietzsche. Presentación de 2 de Bachillerato.
Friedrich Nietzsche. Presentación de 2 de Bachillerato.
 
Introducción a la ciencia de datos con power BI
Introducción a la ciencia de datos con power BIIntroducción a la ciencia de datos con power BI
Introducción a la ciencia de datos con power BI
 
Semana #10-PM3 del 27 al 31 de mayo.pptx
Semana #10-PM3 del 27 al 31 de mayo.pptxSemana #10-PM3 del 27 al 31 de mayo.pptx
Semana #10-PM3 del 27 al 31 de mayo.pptx
 
PPT: El fundamento del gobierno de Dios.
PPT: El fundamento del gobierno de Dios.PPT: El fundamento del gobierno de Dios.
PPT: El fundamento del gobierno de Dios.
 
Libro infantil sapo y sepo un año entero pdf
Libro infantil sapo y sepo un año entero pdfLibro infantil sapo y sepo un año entero pdf
Libro infantil sapo y sepo un año entero pdf
 
Mapa_Conceptual de los fundamentos de la evaluación educativa
Mapa_Conceptual de los fundamentos de la evaluación educativaMapa_Conceptual de los fundamentos de la evaluación educativa
Mapa_Conceptual de los fundamentos de la evaluación educativa
 
Mauricio-Presentación-Vacacional- 2024-1
Mauricio-Presentación-Vacacional- 2024-1Mauricio-Presentación-Vacacional- 2024-1
Mauricio-Presentación-Vacacional- 2024-1
 
CALENDARIZACION DEL MES DE JUNIO - JULIO 24
CALENDARIZACION DEL MES DE JUNIO - JULIO 24CALENDARIZACION DEL MES DE JUNIO - JULIO 24
CALENDARIZACION DEL MES DE JUNIO - JULIO 24
 
ROMPECABEZAS DE ECUACIONES DE PRIMER GRADO OLIMPIADA DE PARÍS 2024. Por JAVIE...
ROMPECABEZAS DE ECUACIONES DE PRIMER GRADO OLIMPIADA DE PARÍS 2024. Por JAVIE...ROMPECABEZAS DE ECUACIONES DE PRIMER GRADO OLIMPIADA DE PARÍS 2024. Por JAVIE...
ROMPECABEZAS DE ECUACIONES DE PRIMER GRADO OLIMPIADA DE PARÍS 2024. Por JAVIE...
 
El fundamento del gobierno de Dios. Lec. 09. docx
El fundamento del gobierno de Dios. Lec. 09. docxEl fundamento del gobierno de Dios. Lec. 09. docx
El fundamento del gobierno de Dios. Lec. 09. docx
 
CONCLUSIONES-DESCRIPTIVAS NIVEL PRIMARIA
CONCLUSIONES-DESCRIPTIVAS NIVEL PRIMARIACONCLUSIONES-DESCRIPTIVAS NIVEL PRIMARIA
CONCLUSIONES-DESCRIPTIVAS NIVEL PRIMARIA
 
3° UNIDAD 3 CUIDAMOS EL AMBIENTE RECICLANDO EN FAMILIA 933623393 PROF YESSENI...
3° UNIDAD 3 CUIDAMOS EL AMBIENTE RECICLANDO EN FAMILIA 933623393 PROF YESSENI...3° UNIDAD 3 CUIDAMOS EL AMBIENTE RECICLANDO EN FAMILIA 933623393 PROF YESSENI...
3° UNIDAD 3 CUIDAMOS EL AMBIENTE RECICLANDO EN FAMILIA 933623393 PROF YESSENI...
 
INFORME MINEDU DEL PRIMER SIMULACRO 2024.pdf
INFORME MINEDU DEL PRIMER SIMULACRO 2024.pdfINFORME MINEDU DEL PRIMER SIMULACRO 2024.pdf
INFORME MINEDU DEL PRIMER SIMULACRO 2024.pdf
 
Portafolio de servicios Centro de Educación Continua EPN
Portafolio de servicios Centro de Educación Continua EPNPortafolio de servicios Centro de Educación Continua EPN
Portafolio de servicios Centro de Educación Continua EPN
 
FICHA DE EJERCICIOS GRECIA 1º DE LA ESO HISTORIA
FICHA DE EJERCICIOS GRECIA 1º DE LA ESO HISTORIAFICHA DE EJERCICIOS GRECIA 1º DE LA ESO HISTORIA
FICHA DE EJERCICIOS GRECIA 1º DE LA ESO HISTORIA
 
Un libro sin recetas, para la maestra y el maestro Fase 3.pdf
Un libro sin recetas, para la maestra y el maestro Fase 3.pdfUn libro sin recetas, para la maestra y el maestro Fase 3.pdf
Un libro sin recetas, para la maestra y el maestro Fase 3.pdf
 

Trabajando con sql (parte 1)

  • 1. Ayudantía de Base de Datos Trabajando con SQL En el interior de esta guía de referencia encontrará material correspondiente al uso de las sentencias SQL (utilizadas por Oracle), ejemplos y algunos trucos que pudieran serle útiles a la hora de confeccionar una base de datos relacional. Dicho lo anterior, “manos a la obra”. Las Tablas Como en todo orden de cosas se debe partir por el comienzo, esta guía no será la excepción. Cuando se quiere realizar un modelo relacional sobre algún administrador de base de datos cualquiera, se piensa generalmente en los componentes que formarán en conjunto la base de datos. Luego, es imposible concebir una base de datos sin la existencia de las tablas y sus relaciones. Pues bien, la unidad a tratar en este momento será la Tabla, cómo crearlas, qué componentes las forman, cómo se relacionan unas con otras, cómo poblarlas con datos, cómo actualizarlas, eliminarlas y cosas por el estilo. CREACION DE TABLAS Una tabla se conoce como un conjunto de datos ordenados de manera tal que dan lugar a un significado especial sobre el conjunto de éstos. (En pocas palabras una tabla entidad o una tabla relación). Pues bien, las líneas que a continuación se presentan muestran cómo definir una tabla común y corriente. (Sin agregado alguno) Sentencia: CREATE TABLE Sintaxis: CREATE TABLE nombre_tabla ( nombre_columna tipo_dato restriccion [, nombre_columna2 tipo_dato restriccion, … nombre_columnaN tipo_dato restriccion]); #NOTA: lo que se encuentra entre corchetes ([ ]) puede ser omitido, es decir, se puede hacer una tabla con solo una o muchas columnas. Antes de presentar el ejemplo del caso, se mostrarán los componentes de la sintaxis anterior. Tipo_dato CHAR(tamaño) Contiene valores compuestos por letras mayúsculas y minúsculas, incluyendo además caracteres especiales. El tamaño máximo permitido de valores (caracteres) es de 255. DATE Fecha y Hora con valores entre Enero, 1 de 4712 AC y Diciembre, 31 de 4712 DC. LONG Similar a CHAR, pero los valores pueden tener sobre 64k en la versión 6.0 de
  • 2. Ayudantía de Base de Datos LONG (continuación) Oracle y hasta 2Gigabytes en la versión 7. No se puede definir más de una columna LONG por tabla. Tampoco se puede usar dicha columna para hacer alguna relación con otra tabla o para hacer una búsqueda sobre la misma. NUMBER(digito1, digito2) Los valores numéricos están compuestos por los dígitos 0-9, con su signo opcional y punto decimal. Puede tener 38 dígitos de ancho (el punto decimal y el signo, si existen, no son contabilizados como dígitos) [NOT] NULL Especifica que la columna puede o no tomar valores nulos. ( [ ]  opcional) Restricciones PRIMARY KEY Identifica la unicidad de cada fila en la tabla. CHECK Especifica una condición que debe ser verdadera. FOREIGN KEY (nombre_columa) REFERENCES nombre_tabla (nombre_columna) Establece y fuerza una relación la columna de la tabla de origen y la columna de la tabla referenciada. [ NOT ] NULL Especifica que la columna puede o no contener valores Nulos. UNIQUE Especifica una columna o columnas cuyos valores deben ser únicos dentro ed todas las filas. Ejemplo: Create table Carrera (Cod_Carrera NUMBER(6,0) NOT NULL, Descripcion CHAR(255) NOT NULL, CONSTRAINT PK_Carrera PRIMARY KEY (Cod_Carrera)); Create table Alumnos (Num_matricula char(20) NOT NULL, Nombre char(255) NOT NULL CHECK(nombre=upper(nombre)), Direccion char(255) NOT NULL, Fecha_Nac DATE NOT NULL, Telefono CHAR(20), CIDentidad NUMBER(8,0) NOT NULL, Digito_ver CHAR(1) NOT NULL CHECK(Digito_ver=upper(Digito_ver)), Carrera NUMBER(6,0) NOT NULL, CONSTRAINT ID_Alumno PRIMARY KEY(Num_matricula), CONSTRAINT FK_Carrera FOREIGN KEY (Carrera) REFERENCES Carrera(Cod_Carrera)); #Nota: la instrucción CHECK se encarga de verificar que al realizarse una inserción los campos cumplan la condición que se especifica. En el ejemplo se pide que Nombre y Digito_ver sean ingresados en mayúsculas.
  • 3. Ayudantía de Base de Datos A continuación se muestra dos ejemplos del uso de CHECK: uno que produce error y otro sin él. SQL> insert into alumnos values ('98917512', 'Claudia Andrea Luza Escobar', 'Cotacotani 234 Poblacion Sn.Jose, Arica', TO_DATE('12-11-1978','DD-MM-YYYY'),NULL, 11111111, '1', 3515); insert into alumnos * ERROR en línea 1: ORA-02290: restricción de control (PO7.SYS_C00383) violada. El ejemplo anterior produce un error, ya que la tabla chequea que los valores de nombre y digito_ver sean ambos en mayúsculas, pero nombre está en una combinación de dichos valores. Acto seguido se ve la mejora sobre el caso anterior. SQL> insert into alumnos values ('98917512', 'CLAUDIA ANDREA LUZA ESCOBAR', 'Cotacotani 234 Poblacion Sn.Jose, Arica', TO_DATE('12-11-1978','DD-MM-YYYY'),NULL, 11111111, '1', 3515); Ahora se estará preguntando cuál es la finalidad de la función TO_DATE, pues no es más que para formatear en un estilo particular el ingreso hacia un campo DATE. Los estilos serán vistos en entregas posteriores. (Podrá buscar información adicional de la función TO_DATE y otras funciones en http://antarex.ucm.cl/oradoc) #Nota: el sitio de referencia sólo es visible en el interior de los laboratorios de computación General y Avanzado. No es visible desde el exterior de la Universidad. Ya se habló sobre CHECK, ahora es el turno de CONSTRAINT. La cláusula Constraint se utiliza para darle un alias (sinónimo) a la clave principal. El mayor uso es para alivianar las tareas de modificación de las tablas o de corrección de las mismas en casos de errores. A qué se refiere lo anterior: pues suponga que ha terminado de crear una tabla, en la cual ha definido un conjunto de campos que le permitirán presentar la clave primaria…, pero olvidó un detalle importante, le faltaba agregar otro campo más... ¿Qué hace? a) Borra la tabla completa y la hace de nuevo corrigiendo el error. b) Intenta Borrar la restricción clave primaria, pero no tiene con qué, ni sabe cómo hacerlo. c) Compra una versión de Sistema Operativo nuevo. Le instala muchos juegos y se olvida de que tiene problemas con una tabla miserable. La opción que se recomienda seguir es b), pero cómo elimina la restricción que primary key le presenta. Pues si recuerda el ejemplo de la tabla alumnos, se dará cuenta que aparece una cláusula CONSTRAINT ID_Alumno. Pues como tuvo la deferencia de agregar esa cláusula, su tarea se ha visto recompensada, ya que para borrar una restricción que PRIMARY KEY presente sólo será necesario eliminar el CONSTRAINT ID_Alumno y el problemas se verá solucionado. El procedimiento es el mismo si lo que se quiere eliminar es una FOREIGN KEY. Más adelante se verá cómo borrar restricciones como las nombradas en el párrafo anterior.
  • 4. Ayudantía de Base de Datos ¿Y qué pasa con FOREIGN KEY (columna) REFERENCES Nombre_tabla(nombre_columna)? Cuando quiere crear una relación entre tablas, lo hace mediante claves foráneas. Pero en SQL, ¿cómo lo hace?. Gracias a las simplezas de la vida, la tarea no es tan tétrica. Como recordará el ejemplo de la tabla alumnos aparece la instrucción FOREIGN KEY (Carrera) REFERENCES Carrera(Cod_Carrera) luego de la definición del CONSTRAINT FK_Carrera de la tabla. Pues bien, dicha instrucción señala que el campo Carrera, de la tabla Alumnos, es clave foránea y está relacionada con el campo Cod_Carrera de la tabla Carrera. #Nota: recuerde que la columna de la tabla referenciada debe ser clave primaria en la misma (tabla referenciada). #Nota2: como recomendación se crea primero las tablas en las cuales no es necesario el uso de claves foráneas. Luego se ingresan unos pocos datos en dichas tablas. Acto seguido comience a crear las tablas que llevan claves foráneas. SIEMPRE use CONSTRAINT en sus tablas. Más adelante se muestra otra forma de agregar CONSTRAINT con claves primarias y foráneas. También verá allí otra recomendación sobre el orden de creación de las tablas. MODIFICACION de la estructura de las Tablas Sentencia: ALTER TABLE Sintaxis: ALTER TABLE Nombre_Tabla ADD (Nombre_columna tipo_dato restricción); ALTER TABLE Nombre_Tabla MODIFY (Nombre_columna Nuevo_tipo_dato Nueva_restricción); ALTER TABLE Nombre_Tabla DROP CONSTRAINT Nombre_Constraint; La primera sintaxis mencionada sirve para agregar campos o restricciones tipo FOREIGN KEY o PRIMARY KEY. La segunda, sirve para modificar un campo EXISTENTE en la tabla. La tercera, se utiliza sólo para eliminar restricciones del tipo FOREIGN KEY o PRIMARY KEY. ¿Cómo agregar restricciones a una tabla? Para agregar clave principal use la siguiente estructura de instrucción: Alter table nombre_tabla Add Constraint Nombre_Constraint PRIMARY KEY (Nombre_columna [, Nombre_Columna2, …]); #Nota: como siempre, lo que está entre corchetes ([ ])se puede obviar.
  • 5. Ayudantía de Base de Datos Para agregar una clave foránea se utiliza el siguiente formato en la instrucción: Alter table nombre_tabla Add Constraint Nombre_Constraint FOREIGN KEY (Nombre_columna) REFERENCES Nombre_Tabla(Nombre_Columna_Tabla); #Recomendaciones: una recomendación de creación de tablas es la siguiente: cree todas las tablas, sin utilizar la definición de claves primarias ni foráneas. A lo mucho utilice las restricciones CHECK y [NOT] NULL. Luego cree todas las claves primarias en las tablas utilizando la instrucción ALTER TABLE con la cláusula ADD CONSTRAINT. Cuando haya terminado el proceso anterior haga lo mismo con las claves foráneas. Le aseguro que se ahorra un 50% de los dolores de cabeza más comunes por trabajar con tablas relacionales. Ejemplos: ALTER TABLE Alumnos ADD (Signo_Zodiaco CHAR(40) Not NULL); ALTER TABLE Alumnos MODIFY (Signo_Zodiaco CHAR(20) NOT NULL); ALTER TABLE Empleados ADD CONSTRAINT PK_Empleados PRIMARY KEY (codigo_empleado); ALTER TABLE Empleados ADD CONSTRAINT FK_Departamentos FOREIGN KEY (depto) REFERENCES Departamento (codigo_departamento); #Nota: el campo depto que se menciona en la última instrucción corresponde a la tabla Empleados, mientras que código_departamento corresponde a la tabla Departamento. ¿Cómo ver la estructura de una tabla en particular? Cuando haya creado una tabla es probable que quiera saber cómo quedó constituída. Pues bien, existe una instrucción que le permite ver la estructura de su tabla en forma simple. Se ha resaltado el verbo ver, ya que sólo le permite visualizar. No sirve para hacer cambios. Instrucción: Describe Sintaxis: Describe Nombre_Tabla; Desc Nombre_Tabla; El segundo es abreviado y sirve de igual manera.
  • 6. Ayudantía de Base de Datos Ejemplo: SQL> desc alumnos; Nombre ¿Nulo? Tipo ------------------------------- -------- ----- NUM_MATRICULA NOT NULL CHAR(20) NOMBRE NOT NULL CHAR(255) DIRECCION NOT NULL CHAR(255) FECHA_NAC NOT NULL DATE TELEFONO CHAR(20) CIDENTIDAD NOT NULL NUMBER(8) DIGITO_VER NOT NULL CHAR(1) CARRERA NOT NULL NUMBER(6) Como puede apreciar, no aparecen las restricciones ni cosas de ese estilo en cada descripción de la tabla, por lo tanto es recomendable que maneje esa información en papel o en algún archivo para no tener problemas futuros. ELIMINACIÓN de Tablas La eliminación de tablas se lleva a efecto por medio de la instrucción o sentencia DROP TABLE. Sentencia: DROP TABLE Sintaxis: DROP TABLE Nombre_Tabla; Con lo anterior se produce la eliminación de la tabla mencionada en Nombre_Tabla. Para eliminar una tabla es necesario que primero exista. Suponga que quiere eliminar la tabla alumnos. Pues nada más bastará ejecutar una instrucción como la siguiente: DROP TABLE alumnos; Con lo anterior, ha sido eliminada la tabla y con ella la relación que existía con la tabla Carrera. #Nota: con respecto a lo dicho en el párrafo anterior se puede concluir que puede ser eliminada una tabla que tiene relaciones salientes, es decir, aquella en la cual se hace referencia a otra tabla. El contra ejemplo es la eliminación de la tabla carrera. Hacia ella se está haciendo una referencia. Veamos qué pasaría si intentara borrarla antes de haber borrado la tabla alumnos. SQL> drop table carrera; drop table carrera * ERROR en línea 1: ORA-02266: claves únicas/primarias en la tabla referidas por claves ajenas activadas Si da cuenta sólo se puede hacer eliminación directa cuando la tabla sólo hace referencia a otras tablas, mientras que a ella no la referencia ninguna otra.
  • 7. Ayudantía de Base de Datos La solución es un tanto engorrosa si lo que se quiere es eliminar es la tabla referenciada. En primer lugar se tendría que eliminar la restricción de clave foranea desde la tabla alumnos; luego ya se está en condiciones de poder eliminar la tabla carrera. Vea el ejemplo de la secuencia que debería utilizar en el caso: SQL> alter table alumnos 2 drop CONSTRAINT FK_carrera; Tabla modificada. SQL> drop table carrera; Tabla borrada. En el ejemplo anterior puede rescatar algunas cosas: Primero, ¿recuerda la pregunta de cómo eliminar las restricciones de una tabla?. Pues el ejemplo de la primera instrucción (alter table) le da la respuesta. Ahora se dará cuenta del porqué es recomendable utilizar la cláusula CONSTRAINT en la definición de las Tablas. Antes de abandonar por completo esta parte referente a las Tablas y sus estructuras me gustaría destacar otro formato para la creación de tablas a partir de otras tablas. Sentencia: CREATE TABLE Sintaxis Modificada: CREATE TABLE Nombre_Tabla AS Select Columna1, Columna2, …, ColumnaN FROM TABLA_ORIGEN [ WHERE CONDICION]; #NOTA: Como siempre, recuerde que lo que está entre corchetes puede ser obviado en el caso que no lo necesite. En resumen de la instrucción anterior, la tabla se crea a partir de la selección de algunas o todas las columnas de una tabla de origen. Esto no es tan rígido, ya que se pueden hacer tablas realizando selecciones a varias tablas con sus columnas respectivas. Se verá mejor este ejemplo en entregas posteriores. TRABAJANDO con los DATOS Ya se ha mostrado los aspectos referentes a las tablas y sus estructuras, así como también se ha mencionado el cómo relacionarlas. Ahora es tiempo de ir probando cómo llenar, actualizar y eliminar datos desde las tablas. Comenzaremos esta parte con el ingreso de datos. Sentencia: INSERT Sintaxis: INSERT INTO Nombre_Tabla (Columna1, Columna2, …, ColumnaN) VALUES (Valor1, Valor2, …, ValorN); Antes de seguir vea la tabla que continuación presenta la información del cómo se introducen datos para los distintos tipos de éstos.
  • 8. Ayudantía de Base de Datos CHAR ‘Claudia Andrea Luza Escobar’ En el ejemplo, los contenidos del tipo CHAR van siempre entre comilla simple. NUMBER -10.5 El tipo NUMBER soporta el uso de signos, y punto decimal. No necesita que se incluya delimitador en él, como en el caso de CHAR. DATE ‘22-04-2000’ El dato de tipo Fecha se delimira al igual que el de tipo CHAR, con comilla simple.* LONG ‘Hola Mundo, esta es la ayudantía de Base de datos’ Tal y como el dato CHAR y DATE, LONG también se delimita con comilla simple. *Con respecto al tipo DATE, suele utilizarse la función TO_DATE para formatear de mejor manera el ingreso de datos de ese tipo. TO_DATE(fecha_a_ingresar, formato) Donde Fecha_a_ingresar, es una cadena de carácter con una fecha válida. Formato, es la máscara de entrada que utilizará la inserción. EJEMPLO: SQL> insert into ejemplo (fecha) 2 values (TO_DATE('12/12/2000','DD/MM/YYYY')); 1 fila creada. SQL> insert into ejemplo (fecha) 2 values (To_date('14-11-1977','DD-MM-YYYY')); 1 fila creada. Con respecto al formato del ejemplo está dato por dos dígitos para el día (DAY), dos para el mes (MONTH), y 4 para el año (YEAR). ACTUALIZACIÓN de datos Cuando el tiempo pasa es necesario que los datos cambien en algunas ocasiones. Por ejemplo un reajuste de sueldos o algo por el estilo. A continuación se ve la estructura de la sentencia y su sistanxis, luego un par de ejemplos. Sentencia: UPDATE Sintaxis: UPDATE Nombre_tabla Set Campo1 = Valor1, Campo2= Valor2, …, CampoN=ValorN [WHERE CONDICIÓN]; EJEMPLOS
  • 9. Ayudantía de Base de Datos SQL> update empleados 2 set sueldo = sueldo * 1.20 3 where tipo = 'secretaria'; 15 filas actualizadas. En el ejemplo anterior, se ha incrementado el sueldo de las secretarias en un 20%. SQL> update alumnos 2 set direccion = 'Camilo Huerta #234, Pobl. Chile Arica' 3 where num_matricula = '98917512'; 1 fila actualizada. Este ejemplo presenta sólo un cambio de datos normal. ELIMINACION de DATOS Como en todo orden de cosas, algunas se gastan y se obsolecen y por lo tanto es mejor eliminarlas. En los datos es la misma historia. Para eliminar datos se utiliza la sentencia Delete que permite borrar algunas filas o todas las filas de una tabla dependiendo de la condición que se le dé. Sentencia: DELETE Sintaxis: DELETE FROM Nombre_Tabla [ WHERE CONDICION]; Dependiendo de la condición especificada es la cantidad de datos que se eliminan. Si no se utiliza la cláusula WHERE CONDICIÓN se corre el riesgo de eliminar todos los datos de la tabla. #NOTA: una instrucción como DELETE FROM alumnos; borra todos los datos de la tabla alumnos, pero sólo los datos. La estructura de la tabla se mantiene intacta. Dicho lo anterior, vamos a los ejemplos: SQL> delete from ejemplo; 4 filas borradas. SQL> delete from alumnos 2 where num_matricula = '98917512'; 1 fila borrada. Ya con esto se finaliza la primera entrega de información con respecto a lo de SQL. Espero que les haya sido de ayuda y nos estaremos encontrando luego con otra de estas documentaciones. Recuerda visitar: http://antarex.ucm.cl/oradoc para más información.
  • 10. Ayudantía de Base de Datos SQL> update empleados 2 set sueldo = sueldo * 1.20 3 where tipo = 'secretaria'; 15 filas actualizadas. En el ejemplo anterior, se ha incrementado el sueldo de las secretarias en un 20%. SQL> update alumnos 2 set direccion = 'Camilo Huerta #234, Pobl. Chile Arica' 3 where num_matricula = '98917512'; 1 fila actualizada. Este ejemplo presenta sólo un cambio de datos normal. ELIMINACION de DATOS Como en todo orden de cosas, algunas se gastan y se obsolecen y por lo tanto es mejor eliminarlas. En los datos es la misma historia. Para eliminar datos se utiliza la sentencia Delete que permite borrar algunas filas o todas las filas de una tabla dependiendo de la condición que se le dé. Sentencia: DELETE Sintaxis: DELETE FROM Nombre_Tabla [ WHERE CONDICION]; Dependiendo de la condición especificada es la cantidad de datos que se eliminan. Si no se utiliza la cláusula WHERE CONDICIÓN se corre el riesgo de eliminar todos los datos de la tabla. #NOTA: una instrucción como DELETE FROM alumnos; borra todos los datos de la tabla alumnos, pero sólo los datos. La estructura de la tabla se mantiene intacta. Dicho lo anterior, vamos a los ejemplos: SQL> delete from ejemplo; 4 filas borradas. SQL> delete from alumnos 2 where num_matricula = '98917512'; 1 fila borrada. Ya con esto se finaliza la primera entrega de información con respecto a lo de SQL. Espero que les haya sido de ayuda y nos estaremos encontrando luego con otra de estas documentaciones. Recuerda visitar: http://antarex.ucm.cl/oradoc para más información.