SlideShare una empresa de Scribd logo
1 de 6
Descargar para leer sin conexión
Aquí incluyo algunos comandos DDL y cláusulas DML, que tal vez olvide mencionar en los
cuestionarios, intento explicar detenidamente los posibles pasos para usar los comandos^^
I. DDL, LENGUAJE DE DEFINICIÓN DE DATOS, OPERACIONES BÁSICAS.
A. CREAR TABLA
Create Table: Crea una tabla
Definición de Columnas
Una lista separada por comas que consiste en cualquiera de los siguientes incisos:
Definición de Llave Primaria
La cláusula CONSTRAINT
Se utiliza la cláusula CONSTRAINT en las instrucciones ALTER TABLE y CREATE TABLE para crear o
eliminar índices. Existen dos sintaxis para esta cláusula dependiendo si se desea Crear ó Eliminar un índice de
un único campo o si se trata de un campo multiíndice.
Estructura General1
1
Me recuerda al archivos crebas.dat que crea PowerDesigner al generar la base de datos =)
CREATE TABLE [nombre tabla] (
[definición de columnas]
) [parámetros de la tabla].
[nombre columna] [tipo de dato] {NULL | NOT NULL}
{opciones de columna}
PRIMARY KEY ( [lista de columnas separadas por coma] )
{CONSTRAINT} [definición del constraint]
CREATE TABLE tabla (
campo1 tipo (tamaño) índice1,
campo2 tipo (tamaño) índice2,...,
índice multicampo,...
);
CONSTRAINT nombre {
PRIMARY KEY (primario1 [, primario2 [,...]]) |
UNIQUE (único1 [, único2 [,...]]) |
FOREIGN KEY (ref1 [, ref2 [,...]]) REFERENCES tabla externa [(campo externo1 [, campo externo2 [,...]])]
}
En donde:
Parte Descripción
tabla Es el nombre de la tabla que se va a crear.
campo1
campo2
Es el nombre del campo o de los campos que se van a crear en la nueva tabla. La nueva tabla
debe contener, al menos, un campo.
tipo Es el tipo de datos de campo en la nueva tabla. (Ver Tipos de Datos)
tamaño Es el tamaño del campo sólo se aplica para campos de tipo texto.
índice1
índice2
Es una cláusula CONSTRAINT que define el tipo de índice a crear. Esta cláusula en opcional.
índice
multicampos
Es una cláusula CONSTRAINT que define el tipo de índice multicampos a crear. Un índice multi
campo es aquel que está indexado por el contenido de varios campos. Esta cláusula en opcional.
nombre Es el nombre del índice que se va a crear.
primarioN Es el nombre del campo o de los campos que forman el índice primario.
únicoN Es el nombre del campo o de los campos que forman el índice de clave única.
refN Es el nombre del campo o de los campos que forman el índice externo (hacen referencia a
campos de otra tabla).
tabla externa Es el nombre de la tabla que contiene el campo o los campos referenciados en refN
campos externos Es el nombre del campo o de los campos de la tabla externa especificados por ref1,
ref2, ..., refN
UNIQUE Genera un índice de clave única. Lo que implica que los registros de la tabla no pueden contener
el mismo valor en los campos indexados.
PRIMARY
KEY
Genera un índice primario el campo o los campos especificados. Todos los campos de la clave
principal deben ser únicos y no nulos, cada tabla sólo puede contener una única clave principal.
FOREIGN
KEY
Genera un índice externo (toma como valor del índice campos contenidos en otras tablas). Si la
clave principal de la tabla externa consta de más de un campo, se debe utilizar una definición de
índice de múltiples campos, listando todos los campos de referencia, el nombre de la tabla
externa, y los nombres de los campos referenciados en la tabla externa en el mismo orden que los
campos de referencia listados. Si los campos referenciados son la clave principal de la tabla
externa, no tiene que especificar los campos referenciados, predeterminado por valor, el motor
Jet se comporta como si la clave principal de la tabla externa fueran los campos referenciados.
Ejemplo:
Crear una tabla llama “Empleado” (recordar que el nombre de la tabla debe de ir en la forma singular), con
los campos:
Código _emp 5 alfanumérico llave principal
Nombre 50 alfanumérico
Apellido 75 alfanumérico
Fecha_nac fecha
CREATE TABLE empleado (
Código_emp INTEGER PRIMARY
KEY,
Nombre CHAR (50) null,
Apellido CHAR (75) not null,
Fecha_nac DATE null
);
B. DROP
Se utiliza para destruir un objeto existente. Tal es el caso de una base de datos, una tabla, índices o una vista.
Este comando se utiliza para eliminar objetos de nuestra base de datos. Se suele utilizar la palabra DROP, a
continuación el tipo del objeto que se desea eliminar (por ejemplo, Table) y por último, el nombre de dicho
objeto (Empleado).
Como ejemplo, el comando para borrar la tabla recien creada^^ llamada Empleado es el siguiente:
Si se borra una tabla, se borran, a su vez, los índices a ella asociados, vistas, vistas creadas a partir de dichas
vistas, etc.
Si se borra una tabla a la que otras hacen referencia en claves externas habrá que incluir la cláusula
CASCADE CONSTRAINT
Otros Ejemplos:
La sentencia DROP es distinta de la sentencia DELETE. Por ejemplo, la sentencia DELETE puede borrar un
poco (o toda) de información de una tabla, mientras que la sentencia DROP remueve toda la tabla de la base de
datos.
C. ALTER
Utilizado para modificar un objeto existente en la base de datos.
Modificar el Diseño de una Tabla
Modifica el diseño de una tabla ya existente, se puden modificar los campos o los índices existentes.
En donde:
Parte Descripción
tabla Es el nombre de la tabla que se desea modificar.
campo Es el nombre del campo que se va a añadir o eliminar.
tipo Es el tipo de campo que se va a añadir.
tamaño El tamaño del campo que se va a añadir (sólo para campos de texto).
índice Es el nombre del índice del campo (cuando se crean campos) o el nombre del
índice de la tabla que se desea eliminar.
índice multicampo Es el nombre del índice del campo multicampo (cuando se crean campos) o el
nombre del índice de la tabla que se desea eliminar.
DROP tipo_objeto nombre_objeto;
DROP TABLE Empleado;
DROP VIEW Informe_Clientes_vw;
DROP INDEX pk_Codigo_Cliente;
ALTER tipo_objeto nombre_objeto parámetros.
ALTER TABLE tabla {
ADD {COLUMN tipo de campo [(tamaño)] [CONSTRAINT índice]
CONSTRAINT índice multicampo} |
DROP {COLUMN campo I CONSTRAINT nombre del índice}
}
Otros comandos utilizados con la cláusula ALTER:
Operación Descripción
ADD COLUMN Se utiliza para añadir un nuevo campo a la tabla, indicando el nombre, el tipo de
campo y opcionalmente el tamaño (para campos de tipo texto).
ADD Se utiliza para agregar un índice de multicampos o de un único campo.
DROP COLUMN Se utiliza para borrar un campo. Se especifica únicamente el nombre del campo.
DROP Se utiliza para eliminar un índice. Se especifica únicamente el nombre del índice a
continuación de la palabra reservada CONSTRAINT.
Ejemplos:
1. Agrega un campo Salario de tipo Moneda a la tabla Empleado.
2. Elimina el campo Salario de la tabla Empleado.
3. Agrega un índice externo a la tabla Pedido. El índice externo se basa en el campo Código_emp y se refiere
al campo Código_emp de la tabla Empleado. En este ejemplo no es necesario indicar el campo junto al
nombre de la tabla en la cláusula REFERENCES, pues Código_emp es la clave principal de la tabla
Empleado.
4. Elimina el índide de la tabla Pedido.
II. DML, LENGUAJE DE DEFINICIÓN DE DATOS, OPERACIONES BÁSICAS.
A. INSERT INTO
Agrega un registro en una tabla. Se la conoce como una consulta de datos añadidos. Esta consulta puede ser de
dos tipo: Insertar un único registro ó Insertar en una tabla los registros contenidos en otra tabla.
Para insertar un único Registro.
Esta consulta graba en el campo1 el valor1, en el campo2 y valor2 y así sucesivamente. Hay que prestar
especial atención a acotar entre comillas simples (') los valores literales (cadenas de caracteres) y las fechas
indicarlas en formato mm-dd-aa y entre caracteres de almohadillas (#).
Para insertar Registros de otra Tabla
ALTER TABLE Empleado ADD COLUMN Salario CURRENCY;
ALTER TABLE Empleado DROP COLUMN Salario;
ALTER TABLE Pedido ADD CONSTRAINT RelacionPedido FOREIGN KEY
(Código_emp) REFERENCES Empleados (Código_emp);
ALTER TABLE Pedido DROP CONSTRAINT RelacionPedido;
INSERT INTO Tabla (campo1, campo2,.., campoN)
VALUES (valor1, valor2,..., valorN);
INSERT INTO Tabla [IN base_externa] (campo1, campo2,..., campoN)
SELECT TablaOrigen.campo1, TablaOrigen.campo2,..., TablaOrigen.campoN
FROM TablaOrigen;
En este caso se seleccionarán los campos 1,2, ..., n de la tabla origen y se grabarán en los campos 1,2,.., n de la
Tabla. La condición SELECT puede incluir la cláusula WHERE para filtrar los registros a copiar. Si Tabla y
TablaOrigen poseen la misma estrucutra podemos simplificar la sintaxis a:
De esta forma los campos de TablaOrigen se grabarán en Tabla, para realizar esta operación es necesario que
todos los campos de TablaOrigen estén contenidos con igual nombre en Tabla.
Ejemplo:
A la tabla Empleado, ingresar el siguiente registro:
Código _emp f0500
Nombre Juan
Apellido Pérez
Fecha_nac 1986/05/19
B. SELECT2
El comando SELECT es el más utilizado en los comandos de SQL. Permite a los usuarios de la base de datos
retirar información específica que ellos desean de una base de datos operacional.
El comando mostrado abajo, retira toda la información contenida en la tabla de "Empleado".
Note que el asterisco es utilizado como un comodín en SQL. Esto literalmente significa "Seleccione todo lo que
se encuentra en la tabla de Empleado".
Como alternativa, los usuarios podrían desear limitar los atributos a ser retirados de la base de datos.
Por ejemplo, El departamento de recursos humanos requiere una lista de los apellidos de todos los empleados
de la compañí.
Finalmente, la clausula WHERE puede ser utilizada para limitar los registros que serán retirados hacia
aquellos que cumplen un criterio especifico. Por ejemplo el Gerente General podría estar interesado en revisar
los registros de personal de los empleados con paga alta. El siguiente comando retira toda la información
contenida en la tabla de "Empleado" para los registros que tienen un salario mayor a $12,000 (suponiendo que
exista el campo Slario).
2
Solo muestro lo básico del uso de esta cláusula, ya que hay un sin fin de formas de utilizarla, con la combinación de los
demás comandos (operadores lógicos y de comparación, funciones de agregado y consultas con predicado (ALL TOP,
DISTINT CT, DISTIN CTROW, etc.), etc.), solo depende de la creatividad de cada quien (>.<)
INSERT INTO Tabla SELECT TablaOrigen.* FROM TablaOrigen;
INSERT INTO Empleado
VALUES (‘f0500’, ‘Juan’, ‘Pérez’, ‘1986/05/19’);
SELECT *
FROM Empleado
SELECT Apellido
FROM Empleado
SELECT *
FROM Empleado
WHERE Salario > $12000
C. UPDATE
Crea una consulta de actualización que cambia los valores de los campos de una tabla especificada basándose
en un criterio específico.
UPDATE es especialmente útil cuando se desea cambiar un gran número de registros o cuando éstos se
encuentran en múltiples tablas. Puede cambiar varios campos a la vez.
Ejemplo:
Incrementa los valores Cantidad pedidos en un 10 por ciento y los valores Transporte en un 3 por ciento para
aquellos que se hayan enviado al Reino Unido.
UPDATE no genera ningún resultado. Para saber qué registros se van a cambiar, hay que examinar primero el
resultado de una consulta de selección que utilice el mismo criterio y después ejecutar la consulta de
actualización.
Si en una consulta de actualización suprimimos la cláusula WHERE todos los registros de la tabla señalada
serán actualizados.
D. DELETE
Utilizado para eliminar datos dentro de una tabla. Desafortunadamente, los últimos ingresos de la corporación
reportan disminución en el desempeño, esto ha causado que Juan Perez sea despedido.
El comando DELETE con la clausula WHERE puede ser utilizado para eliminar su registro de la tabla de
Empleado
UPDATE Tabla SET Campo1=Valor1, Campo2=Valor2,... CampoN=ValorN
WHERE Criterio;
UPDATE Pedidos SET Pedido = Pedidos * 1.1, Transporte = Transporte * 1.03
WHERE PaisEnvío = 'ES';
UPDATE Empleados SET Grado = 5 WHERE Grado = 2;
UPDATE Productos SET Precio = Precio * 1.1 WHERE Proveedor = 8 AND Familia = 3;
UPDATE Empleados SET Salario = Salario * 1.1
DELETE FROM personal
WHERE Código_emp = f5012

Más contenido relacionado

La actualidad más candente

4 establecer-procesos-para-la-manipulacion-de-la-base-de-datos
4 establecer-procesos-para-la-manipulacion-de-la-base-de-datos4 establecer-procesos-para-la-manipulacion-de-la-base-de-datos
4 establecer-procesos-para-la-manipulacion-de-la-base-de-datos
Nathaly Arias
 
Introducción a sql consultas y criterios de selección
Introducción a sql consultas y criterios de selecciónIntroducción a sql consultas y criterios de selección
Introducción a sql consultas y criterios de selección
M.c. Omar Jasso
 
Objeto De Aprendizaje
Objeto De AprendizajeObjeto De Aprendizaje
Objeto De Aprendizaje
gviera
 
Ada5 marcogaeltecchi 1_e
Ada5 marcogaeltecchi 1_eAda5 marcogaeltecchi 1_e
Ada5 marcogaeltecchi 1_e
Marco Tec
 
Objeto De Aprendizaje
Objeto De AprendizajeObjeto De Aprendizaje
Objeto De Aprendizaje
gviera
 
Consultas sql 2014
Consultas sql 2014Consultas sql 2014
Consultas sql 2014
Henry Cambal
 
Diapocitivas de excel
Diapocitivas de excelDiapocitivas de excel
Diapocitivas de excel
Erly QuinTero
 

La actualidad más candente (19)

Seleccion de datos_sql_2005
Seleccion de datos_sql_2005Seleccion de datos_sql_2005
Seleccion de datos_sql_2005
 
4 establecer-procesos-para-la-manipulacion-de-la-base-de-datos
4 establecer-procesos-para-la-manipulacion-de-la-base-de-datos4 establecer-procesos-para-la-manipulacion-de-la-base-de-datos
4 establecer-procesos-para-la-manipulacion-de-la-base-de-datos
 
Introducción a sql consultas y criterios de selección
Introducción a sql consultas y criterios de selecciónIntroducción a sql consultas y criterios de selección
Introducción a sql consultas y criterios de selección
 
Objeto De Aprendizaje
Objeto De AprendizajeObjeto De Aprendizaje
Objeto De Aprendizaje
 
Ada5 marcogaeltecchi 1_e
Ada5 marcogaeltecchi 1_eAda5 marcogaeltecchi 1_e
Ada5 marcogaeltecchi 1_e
 
SENTENCIAS DE SQL SERVER
SENTENCIAS DE SQL SERVERSENTENCIAS DE SQL SERVER
SENTENCIAS DE SQL SERVER
 
Aprenda SQL Server
Aprenda SQL ServerAprenda SQL Server
Aprenda SQL Server
 
Guia basica de MySQL 2
Guia basica de MySQL 2Guia basica de MySQL 2
Guia basica de MySQL 2
 
Objeto De Aprendizaje
Objeto De AprendizajeObjeto De Aprendizaje
Objeto De Aprendizaje
 
TEMAS DE UNIDAD 4
TEMAS DE UNIDAD 4TEMAS DE UNIDAD 4
TEMAS DE UNIDAD 4
 
Consultas Basicas En Sql Server 2005
Consultas Basicas En Sql Server 2005Consultas Basicas En Sql Server 2005
Consultas Basicas En Sql Server 2005
 
Consultas sql 2014
Consultas sql 2014Consultas sql 2014
Consultas sql 2014
 
Ensayo exel
Ensayo exelEnsayo exel
Ensayo exel
 
Practicas de excel2
Practicas de excel2Practicas de excel2
Practicas de excel2
 
PHP MySql - FIEI - UNFVClase06
PHP MySql - FIEI - UNFVClase06PHP MySql - FIEI - UNFVClase06
PHP MySql - FIEI - UNFVClase06
 
Introducción a sql server
Introducción a sql serverIntroducción a sql server
Introducción a sql server
 
Unidad iii terminada
Unidad iii  terminadaUnidad iii  terminada
Unidad iii terminada
 
Guía excel
Guía excelGuía excel
Guía excel
 
Diapocitivas de excel
Diapocitivas de excelDiapocitivas de excel
Diapocitivas de excel
 

Destacado (6)

Indonesia delegation March 2011 itinerary
Indonesia delegation March 2011 itineraryIndonesia delegation March 2011 itinerary
Indonesia delegation March 2011 itinerary
 
PresentacióN
PresentacióNPresentacióN
PresentacióN
 
Handouts EMMAÜS Op weg
Handouts EMMAÜS Op wegHandouts EMMAÜS Op weg
Handouts EMMAÜS Op weg
 
Articulo
ArticuloArticulo
Articulo
 
Derecho competencia
Derecho competenciaDerecho competencia
Derecho competencia
 
Cartilha da cidadania Conheça seus Direitos
Cartilha da cidadania Conheça seus DireitosCartilha da cidadania Conheça seus Direitos
Cartilha da cidadania Conheça seus Direitos
 

Similar a Ejemploddl dml-ok (20)

Consultas basicas en sql server
Consultas basicas en sql serverConsultas basicas en sql server
Consultas basicas en sql server
 
Sentencias Sql
Sentencias SqlSentencias Sql
Sentencias Sql
 
Sql 2010
Sql 2010Sql 2010
Sql 2010
 
Lenguaje sql
Lenguaje sqlLenguaje sql
Lenguaje sql
 
Sql basico parte_i_
Sql basico parte_i_Sql basico parte_i_
Sql basico parte_i_
 
Sql basico parte_i_
Sql basico parte_i_Sql basico parte_i_
Sql basico parte_i_
 
Sql basico parte_i_
Sql basico parte_i_Sql basico parte_i_
Sql basico parte_i_
 
Unidad 6 Lenguaje Sql 2
Unidad 6 Lenguaje Sql 2Unidad 6 Lenguaje Sql 2
Unidad 6 Lenguaje Sql 2
 
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
 
Comandos y funciones sql postgres
Comandos y funciones sql postgresComandos y funciones sql postgres
Comandos y funciones sql postgres
 
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
 
Consultas sql
Consultas sqlConsultas sql
Consultas sql
 
Consultas sql
Consultas sqlConsultas sql
Consultas sql
 
Estructura de una tabla sql
Estructura de una tabla sqlEstructura de una tabla sql
Estructura de una tabla sql
 
Tutorial sql
Tutorial sqlTutorial sql
Tutorial sql
 
Trabajando con sql (parte 1)
Trabajando con sql (parte 1)Trabajando con sql (parte 1)
Trabajando con sql (parte 1)
 
Sql Basico
Sql BasicoSql Basico
Sql Basico
 
8 Guía_Fundamentos de Base de Datos (2).docx
8 Guía_Fundamentos de Base de Datos (2).docx8 Guía_Fundamentos de Base de Datos (2).docx
8 Guía_Fundamentos de Base de Datos (2).docx
 
La función BDCONTARA
La función BDCONTARALa función BDCONTARA
La función BDCONTARA
 

Más de BB

Formularios html
Formularios htmlFormularios html
Formularios html
BB
 

Más de BB (20)

Hallazgos sobre narrativas del periodismo digital
Hallazgos sobre narrativas  del periodismo digitalHallazgos sobre narrativas  del periodismo digital
Hallazgos sobre narrativas del periodismo digital
 
Formularios html
Formularios htmlFormularios html
Formularios html
 
Papeles de trabajo en auditoría ojo
Papeles de trabajo en auditoría  ojoPapeles de trabajo en auditoría  ojo
Papeles de trabajo en auditoría ojo
 
Redes sociales como negocio virtual
Redes sociales como negocio virtualRedes sociales como negocio virtual
Redes sociales como negocio virtual
 
Modelo entidad relacion ok
Modelo entidad relacion okModelo entidad relacion ok
Modelo entidad relacion ok
 
Proceso de auditoria ok
Proceso de auditoria  okProceso de auditoria  ok
Proceso de auditoria ok
 
Mentidadrelacion ojo
Mentidadrelacion  ojoMentidadrelacion  ojo
Mentidadrelacion ojo
 
Entidad relacin-1-ok
Entidad relacin-1-okEntidad relacin-1-ok
Entidad relacin-1-ok
 
Portafolio de bienes y servicios
Portafolio de bienes y serviciosPortafolio de bienes y servicios
Portafolio de bienes y servicios
 
Tiendas virtuales
Tiendas virtualesTiendas virtuales
Tiendas virtuales
 
Determinacion de requerimientos
Determinacion de requerimientosDeterminacion de requerimientos
Determinacion de requerimientos
 
Fundamentos de sistemas de informacion ok
Fundamentos de sistemas de informacion  okFundamentos de sistemas de informacion  ok
Fundamentos de sistemas de informacion ok
 
Presentacio sql ok
Presentacio sql okPresentacio sql ok
Presentacio sql ok
 
Interfaz proyecto
Interfaz proyectoInterfaz proyecto
Interfaz proyecto
 
Modelo auditoria de software
Modelo auditoria de softwareModelo auditoria de software
Modelo auditoria de software
 
Actividades de la auditoria
Actividades de la auditoriaActividades de la auditoria
Actividades de la auditoria
 
Conceptos basicos e commerce
Conceptos basicos e commerceConceptos basicos e commerce
Conceptos basicos e commerce
 
Formulación de objetivos de investigación
Formulación de objetivos de investigaciónFormulación de objetivos de investigación
Formulación de objetivos de investigación
 
Verbos para investigacion
Verbos para investigacionVerbos para investigacion
Verbos para investigacion
 
Verbos utilizados en investigacion
Verbos utilizados en investigacionVerbos utilizados en investigacion
Verbos utilizados en investigacion
 

Ejemploddl dml-ok

  • 1. Aquí incluyo algunos comandos DDL y cláusulas DML, que tal vez olvide mencionar en los cuestionarios, intento explicar detenidamente los posibles pasos para usar los comandos^^ I. DDL, LENGUAJE DE DEFINICIÓN DE DATOS, OPERACIONES BÁSICAS. A. CREAR TABLA Create Table: Crea una tabla Definición de Columnas Una lista separada por comas que consiste en cualquiera de los siguientes incisos: Definición de Llave Primaria La cláusula CONSTRAINT Se utiliza la cláusula CONSTRAINT en las instrucciones ALTER TABLE y CREATE TABLE para crear o eliminar índices. Existen dos sintaxis para esta cláusula dependiendo si se desea Crear ó Eliminar un índice de un único campo o si se trata de un campo multiíndice. Estructura General1 1 Me recuerda al archivos crebas.dat que crea PowerDesigner al generar la base de datos =) CREATE TABLE [nombre tabla] ( [definición de columnas] ) [parámetros de la tabla]. [nombre columna] [tipo de dato] {NULL | NOT NULL} {opciones de columna} PRIMARY KEY ( [lista de columnas separadas por coma] ) {CONSTRAINT} [definición del constraint] CREATE TABLE tabla ( campo1 tipo (tamaño) índice1, campo2 tipo (tamaño) índice2,..., índice multicampo,... ); CONSTRAINT nombre { PRIMARY KEY (primario1 [, primario2 [,...]]) | UNIQUE (único1 [, único2 [,...]]) | FOREIGN KEY (ref1 [, ref2 [,...]]) REFERENCES tabla externa [(campo externo1 [, campo externo2 [,...]])] }
  • 2. En donde: Parte Descripción tabla Es el nombre de la tabla que se va a crear. campo1 campo2 Es el nombre del campo o de los campos que se van a crear en la nueva tabla. La nueva tabla debe contener, al menos, un campo. tipo Es el tipo de datos de campo en la nueva tabla. (Ver Tipos de Datos) tamaño Es el tamaño del campo sólo se aplica para campos de tipo texto. índice1 índice2 Es una cláusula CONSTRAINT que define el tipo de índice a crear. Esta cláusula en opcional. índice multicampos Es una cláusula CONSTRAINT que define el tipo de índice multicampos a crear. Un índice multi campo es aquel que está indexado por el contenido de varios campos. Esta cláusula en opcional. nombre Es el nombre del índice que se va a crear. primarioN Es el nombre del campo o de los campos que forman el índice primario. únicoN Es el nombre del campo o de los campos que forman el índice de clave única. refN Es el nombre del campo o de los campos que forman el índice externo (hacen referencia a campos de otra tabla). tabla externa Es el nombre de la tabla que contiene el campo o los campos referenciados en refN campos externos Es el nombre del campo o de los campos de la tabla externa especificados por ref1, ref2, ..., refN UNIQUE Genera un índice de clave única. Lo que implica que los registros de la tabla no pueden contener el mismo valor en los campos indexados. PRIMARY KEY Genera un índice primario el campo o los campos especificados. Todos los campos de la clave principal deben ser únicos y no nulos, cada tabla sólo puede contener una única clave principal. FOREIGN KEY Genera un índice externo (toma como valor del índice campos contenidos en otras tablas). Si la clave principal de la tabla externa consta de más de un campo, se debe utilizar una definición de índice de múltiples campos, listando todos los campos de referencia, el nombre de la tabla externa, y los nombres de los campos referenciados en la tabla externa en el mismo orden que los campos de referencia listados. Si los campos referenciados son la clave principal de la tabla externa, no tiene que especificar los campos referenciados, predeterminado por valor, el motor Jet se comporta como si la clave principal de la tabla externa fueran los campos referenciados. Ejemplo: Crear una tabla llama “Empleado” (recordar que el nombre de la tabla debe de ir en la forma singular), con los campos: Código _emp 5 alfanumérico llave principal Nombre 50 alfanumérico Apellido 75 alfanumérico Fecha_nac fecha CREATE TABLE empleado ( Código_emp INTEGER PRIMARY KEY, Nombre CHAR (50) null, Apellido CHAR (75) not null, Fecha_nac DATE null );
  • 3. B. DROP Se utiliza para destruir un objeto existente. Tal es el caso de una base de datos, una tabla, índices o una vista. Este comando se utiliza para eliminar objetos de nuestra base de datos. Se suele utilizar la palabra DROP, a continuación el tipo del objeto que se desea eliminar (por ejemplo, Table) y por último, el nombre de dicho objeto (Empleado). Como ejemplo, el comando para borrar la tabla recien creada^^ llamada Empleado es el siguiente: Si se borra una tabla, se borran, a su vez, los índices a ella asociados, vistas, vistas creadas a partir de dichas vistas, etc. Si se borra una tabla a la que otras hacen referencia en claves externas habrá que incluir la cláusula CASCADE CONSTRAINT Otros Ejemplos: La sentencia DROP es distinta de la sentencia DELETE. Por ejemplo, la sentencia DELETE puede borrar un poco (o toda) de información de una tabla, mientras que la sentencia DROP remueve toda la tabla de la base de datos. C. ALTER Utilizado para modificar un objeto existente en la base de datos. Modificar el Diseño de una Tabla Modifica el diseño de una tabla ya existente, se puden modificar los campos o los índices existentes. En donde: Parte Descripción tabla Es el nombre de la tabla que se desea modificar. campo Es el nombre del campo que se va a añadir o eliminar. tipo Es el tipo de campo que se va a añadir. tamaño El tamaño del campo que se va a añadir (sólo para campos de texto). índice Es el nombre del índice del campo (cuando se crean campos) o el nombre del índice de la tabla que se desea eliminar. índice multicampo Es el nombre del índice del campo multicampo (cuando se crean campos) o el nombre del índice de la tabla que se desea eliminar. DROP tipo_objeto nombre_objeto; DROP TABLE Empleado; DROP VIEW Informe_Clientes_vw; DROP INDEX pk_Codigo_Cliente; ALTER tipo_objeto nombre_objeto parámetros. ALTER TABLE tabla { ADD {COLUMN tipo de campo [(tamaño)] [CONSTRAINT índice] CONSTRAINT índice multicampo} | DROP {COLUMN campo I CONSTRAINT nombre del índice} }
  • 4. Otros comandos utilizados con la cláusula ALTER: Operación Descripción ADD COLUMN Se utiliza para añadir un nuevo campo a la tabla, indicando el nombre, el tipo de campo y opcionalmente el tamaño (para campos de tipo texto). ADD Se utiliza para agregar un índice de multicampos o de un único campo. DROP COLUMN Se utiliza para borrar un campo. Se especifica únicamente el nombre del campo. DROP Se utiliza para eliminar un índice. Se especifica únicamente el nombre del índice a continuación de la palabra reservada CONSTRAINT. Ejemplos: 1. Agrega un campo Salario de tipo Moneda a la tabla Empleado. 2. Elimina el campo Salario de la tabla Empleado. 3. Agrega un índice externo a la tabla Pedido. El índice externo se basa en el campo Código_emp y se refiere al campo Código_emp de la tabla Empleado. En este ejemplo no es necesario indicar el campo junto al nombre de la tabla en la cláusula REFERENCES, pues Código_emp es la clave principal de la tabla Empleado. 4. Elimina el índide de la tabla Pedido. II. DML, LENGUAJE DE DEFINICIÓN DE DATOS, OPERACIONES BÁSICAS. A. INSERT INTO Agrega un registro en una tabla. Se la conoce como una consulta de datos añadidos. Esta consulta puede ser de dos tipo: Insertar un único registro ó Insertar en una tabla los registros contenidos en otra tabla. Para insertar un único Registro. Esta consulta graba en el campo1 el valor1, en el campo2 y valor2 y así sucesivamente. Hay que prestar especial atención a acotar entre comillas simples (') los valores literales (cadenas de caracteres) y las fechas indicarlas en formato mm-dd-aa y entre caracteres de almohadillas (#). Para insertar Registros de otra Tabla ALTER TABLE Empleado ADD COLUMN Salario CURRENCY; ALTER TABLE Empleado DROP COLUMN Salario; ALTER TABLE Pedido ADD CONSTRAINT RelacionPedido FOREIGN KEY (Código_emp) REFERENCES Empleados (Código_emp); ALTER TABLE Pedido DROP CONSTRAINT RelacionPedido; INSERT INTO Tabla (campo1, campo2,.., campoN) VALUES (valor1, valor2,..., valorN); INSERT INTO Tabla [IN base_externa] (campo1, campo2,..., campoN) SELECT TablaOrigen.campo1, TablaOrigen.campo2,..., TablaOrigen.campoN FROM TablaOrigen;
  • 5. En este caso se seleccionarán los campos 1,2, ..., n de la tabla origen y se grabarán en los campos 1,2,.., n de la Tabla. La condición SELECT puede incluir la cláusula WHERE para filtrar los registros a copiar. Si Tabla y TablaOrigen poseen la misma estrucutra podemos simplificar la sintaxis a: De esta forma los campos de TablaOrigen se grabarán en Tabla, para realizar esta operación es necesario que todos los campos de TablaOrigen estén contenidos con igual nombre en Tabla. Ejemplo: A la tabla Empleado, ingresar el siguiente registro: Código _emp f0500 Nombre Juan Apellido Pérez Fecha_nac 1986/05/19 B. SELECT2 El comando SELECT es el más utilizado en los comandos de SQL. Permite a los usuarios de la base de datos retirar información específica que ellos desean de una base de datos operacional. El comando mostrado abajo, retira toda la información contenida en la tabla de "Empleado". Note que el asterisco es utilizado como un comodín en SQL. Esto literalmente significa "Seleccione todo lo que se encuentra en la tabla de Empleado". Como alternativa, los usuarios podrían desear limitar los atributos a ser retirados de la base de datos. Por ejemplo, El departamento de recursos humanos requiere una lista de los apellidos de todos los empleados de la compañí. Finalmente, la clausula WHERE puede ser utilizada para limitar los registros que serán retirados hacia aquellos que cumplen un criterio especifico. Por ejemplo el Gerente General podría estar interesado en revisar los registros de personal de los empleados con paga alta. El siguiente comando retira toda la información contenida en la tabla de "Empleado" para los registros que tienen un salario mayor a $12,000 (suponiendo que exista el campo Slario). 2 Solo muestro lo básico del uso de esta cláusula, ya que hay un sin fin de formas de utilizarla, con la combinación de los demás comandos (operadores lógicos y de comparación, funciones de agregado y consultas con predicado (ALL TOP, DISTINT CT, DISTIN CTROW, etc.), etc.), solo depende de la creatividad de cada quien (>.<) INSERT INTO Tabla SELECT TablaOrigen.* FROM TablaOrigen; INSERT INTO Empleado VALUES (‘f0500’, ‘Juan’, ‘Pérez’, ‘1986/05/19’); SELECT * FROM Empleado SELECT Apellido FROM Empleado SELECT * FROM Empleado WHERE Salario > $12000
  • 6. C. UPDATE Crea una consulta de actualización que cambia los valores de los campos de una tabla especificada basándose en un criterio específico. UPDATE es especialmente útil cuando se desea cambiar un gran número de registros o cuando éstos se encuentran en múltiples tablas. Puede cambiar varios campos a la vez. Ejemplo: Incrementa los valores Cantidad pedidos en un 10 por ciento y los valores Transporte en un 3 por ciento para aquellos que se hayan enviado al Reino Unido. UPDATE no genera ningún resultado. Para saber qué registros se van a cambiar, hay que examinar primero el resultado de una consulta de selección que utilice el mismo criterio y después ejecutar la consulta de actualización. Si en una consulta de actualización suprimimos la cláusula WHERE todos los registros de la tabla señalada serán actualizados. D. DELETE Utilizado para eliminar datos dentro de una tabla. Desafortunadamente, los últimos ingresos de la corporación reportan disminución en el desempeño, esto ha causado que Juan Perez sea despedido. El comando DELETE con la clausula WHERE puede ser utilizado para eliminar su registro de la tabla de Empleado UPDATE Tabla SET Campo1=Valor1, Campo2=Valor2,... CampoN=ValorN WHERE Criterio; UPDATE Pedidos SET Pedido = Pedidos * 1.1, Transporte = Transporte * 1.03 WHERE PaisEnvío = 'ES'; UPDATE Empleados SET Grado = 5 WHERE Grado = 2; UPDATE Productos SET Precio = Precio * 1.1 WHERE Proveedor = 8 AND Familia = 3; UPDATE Empleados SET Salario = Salario * 1.1 DELETE FROM personal WHERE Código_emp = f5012