Vamos a Crear el siguiente modelo, en una base de Datos llamada ClaseAutos. Comando para Crear la Base de Datos Create Database ClaseAutos Comando para utilizar la Base de Datos Use ClaseAutos
vehiculo IDVehiculo Placa Ano Kilometraje Cedula IdModelo Modelo Marca IdModelo Descripcion IdMarca IdMarca Descripcion Persona Cedula Apellido Nombre FechaNacimiento
Establecer el orden de Creación: vehiculo IDVehiculo Placa Ano Kilometraje Cedula IdModelo Modelo Marca IdModelo Descripcion IdMarca IdMarca Descripcion Persona Cedula Apellido Nombre FechaNacimiento
Persona Cedula Apellido Nombre FechaNacimiento Cedula, tipo entero y como clave Primaria Apellido, tipo nvarchar (75) not null Nombre, tipo nvarchar (75) not null FechaNacimiento, DateTime not null y que valide que sea menor a la fecha de hoy
Marca IdMarca Descripcion IdMarca, tipo entero, como clave Primaria y Auto-Numerico Descripcion, tipo nvarchar (50) not null
Modelo IdModelo Descripcion IdMarca IdModelo, tipo entero, como clave Primaria y Auto-Numerico Descripción, tipo nvarchar (50) not null IdMarca, tipo entero, not null
vehiculo IDVehiculo Placa Ano Kilometraje Cedula IdModelo IdVehiculo, tipo entero, como clave Primaria y Auto-Numerico Placa, tipo nvarchar (10) not null Ano, tipo entero not null Kilometraje, tipo entero not null y validar que el Kilometraje sea mayor o igual a 0 Cedula, tipo entero not null IdModelo, tipo entero, not null
Comandos Manipulación de Datos (DML) Se refiere a los comandos que permiten a un usuario manipular los datos en un repositorio, es decir, añadir, consultar, borrar o actualizar. Comando SELECT INSERT UPDATE DELETE Descripción Utilizado para consultar registros de la base de datos que satisfagan un criterio determinado Utilizado para agregar registros en una tabla. Utilizado para modificar los valores de los campos y registros Especificados. Utilizado para eliminar registros de una tabla de una base de dato
INSERT INTO Agregar 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.
INSERT INTO Sintaxis para insertar un único Registro: INSERT INTO Tabla (campo1, campo2,..., campon) VALUES (valor1, valor2,..., valorn) Sintaxis para insertar Registros contenidos en otra Tabla: INSERT INTO Tabla (campo1, campo2,, campon) SELECT TablaOrigen.campo1, TablaOrigen.campo2,TablaOrigen.campoN FROM Tabla Origen
INSERT INTO Debemos tener en cuenta el tipo de dato que vamos a ingresar, ya que: Si es Carácter, debe ir entre, ejemplo Venezuela Si es Fecha, debe ir entre, ejemplo 2010/06/06 Si es Numérico, debemos escribir solo el numero, ejemplo 2
INSERT INTO Registrar los siguientes datos en la tabla Persona Cedula = 15000000 Apellidos = Bolívar Cancines Nombre = Luis Rafael Fecha Nacimiento = 1982/12/30 Persona Cedula Apellido Nombre FechaNacimiento
INSERT INTO Registrar los siguientes datos en la tabla Marca Descripción = RENAULT Marca IdMarca Descripcion
INSERT INTO Registrar los siguientes datos en la tabla Modelo Descripción = Cleo IdMarca= 1 Modelo IdModelo Descripcion IdMarca
INSERT INTO Registrar los siguientes datos en la tabla Vehículo Placa = GDF45J Ano = 2007 Kilometraje = 100000 IdModelo = 1 vehiculo IDVehiculo Placa Ano Kilometraje Cedula IdModelo
Vamos a Probar cada restricción colocada al momento de crear cada una de mis tablas. INSERT INTO Registrar los siguientes datos en la tabla Vehículo Placa = GF5434 Ano = 2008 Kilometraje = -1 IdModelo = 1
Mens. 547, Nivel 16, Estado 0, Línea 1 Instrucción INSERT en conflicto con la restricción CHECK "CK vehiculo Kilome 0519C6AF". El conflicto ha aparecido en la base de datos "ClaseAutos", tabla "dbo.vehiculo", column 'Kilometraje'. Se terminó la instrucción.
Vamos a Probar cada restricción colocada al momento de crear cada una de mis tablas. INSERT INTO Registrar los siguientes datos en la tabla Persona Cedula = 12000000 Apellidos = Redondo Nombre = Fernando Fecha Nacimiento = 2011/12/30
Mens. 547, Nivel 16, Estado 0, Línea 1 Instrucción INSERT en conflicto con la restricción CHECK "CK Persona FechaNa 7D78A4E7". El conflicto ha aparecido en la base de datos "ClaseAutos", tabla "dbo.persona", column 'FechaNacimiento'. Se terminó la instrucción.
INSERT INTO Registrar los siguientes datos en la tabla Marca Descripción = TOYOTA Descripción = CHEVROLET Descripción = DODGE Descripción = FERRARI
Clausulas Las cláusulas son condiciones de modificación utilizadas para definir los datos que desea seleccionar o manipular. Comando FROM WHERE GROUP BY HAVING ORDER BY Descripción Utilizada para especificar la tabla de la cual se van a seleccionar los Registros Utilizada para especificar las condiciones que deben reunir los registros que se van a seleccionar Utilizada para separar los registros seleccionados en grupos específicos Utilizada para expresar la condición que debe satisfacer cada grupo Utilizada para ordenar los registros seleccionados de acuerdo con un orden específico
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 Tabla SET Campo1=Valor1, Campo2=Valor2, CampoN=ValorN WHERE Criterio Ejemplo: Se necesita actualizar la tabla Modelo, se nos solicitar cambiar el modelo cuya Descripcion es Cleo a Megane
UPDATE UPDATE = (Sentencia que inicia el comando de actualización) Tabla = (Nombre de la Tabla) SET = (Inicio de los Campos a Actualizar) Campo1=Valor1 = (Nombre del o los Campos a Actualizar) WHERE = (Inicia el bloque del o los criterios) Campo1=Valor1 = (Campos que se van a utilizar para buscar el criterio)
UPDATE Se nos pide devolver el Cambio Se nos pide actualizar el campo Apellido (Bolivar C) de la tabla Persona, de aquel registro cuya cedula=15000000 y nombre= Luis Rafael.
SELECT Utilizado para consultar registros de la base de datos que satisfagan un criterio determinado. Consultas de Selección Las consultas de selección se utilizan para indicar al motor de datos que devuelva información de las bases de datos, esta información es devuelta en forma de conjunto de registros.
Consultas Básicas La sintaxis correcta para realizar una consulta basica es la siguiente Select Campo1,Campo2,CampoN from Tabla1 Select = (Seleccione) Campo1,Campo2,CampoN = (Campo(S) que deseamos Consultar) From = (De la tabla) Tabla1 = (Nombre de la Tabla)
Ejemplo de una consulta Básica 1. Seleccionar de la Tabla Persona los campos (Apellido, Nombre) Select Apellido, Nombre from Persona 2. Seleccionar de la Tabla Marca los campos (IdMarca, Descripción) Select IdMarca, Descripcion from Marca
Consultas Básicas Ordenada Adicionalmente se puede especificar el orden en que se desean recuperar los registros de las tablas mediante la claúsula ORDER BY La sintaxis correcta para realizar una consulta básica ordenada es la siguiente Select Campo1,Campo2,CampoN from Tabla1 Order By Campo2
Select = (Seleccione) Campo1,Campo2,CampoN = (Campo(S) que deseamos Consultar) From = (De la tabla) Tabla1 = (Nombre de la Tabla) ORDER BY = (Indica que se va a establecer un orden) Campo1 = (El campo por el cual se van a ordenar los datos) ASC/DESC = (El tipo de orden)
Ejemplo de una consulta básica Ordenada. 1. Seleccionar de la Tabla Marca los campos (IdMarca, Descripción) ordenados por el campo Descripción de forma Ascendente. Select IdMarca, Descripcion from Marca order by Descripcion ASC Select IdMarca, Descripcion from Marca order by 2 ASC
Ejemplo de una consulta básica Ordenada. 2. Seleccionar de la Tabla Marca los campos (IdMarca, Descripción) ordenados por el campo Descripción de forma Descendente. Select IdMarca, Descripcion from Marca order by Descripcion DESC Select IdMarca, Descripcion from Marca order by 2 DESC
Consulta con Predicado. El predicado se incluye entre la clausula (Select) y el primer nombre del campo a recuperar, los posibles predicados son: Predicado Descripción * Devuelve todos los campos de la tabla. TOP DISTINCT Devuelve un determinado número de registros de la tabla. Omite los registros cuyos campos seleccionados coincidan totalmente.
Ejemplo de una consulta con Predicado. 1. Seleccionar todos los campos y todos los registros de la tabla Marca Select * from Marca 2. Seleccionar solo dos registros de la tabla marca ordenado por descripción de forma Ascendente. Select TOP 2 IdMarca, Descripcion from Marca order by Descripcion Asc
Ejemplo de una consulta con Predicado. 3. Seleccionar solo dos registros de la tabla marca ordenado por descripción de forma Descendente. Select TOP 2 IdMarca, Descripcion from Marca order by Descripcion DESC Nota: Se puede utilizar la palabra reservada PERCENT para devolver un cierto porcentaje de registros que caen al principio o al final de un rango especificado por la cláusula ORDER BY.
Ejemplo de una consulta con Predicado. 4. Seleccionar el 100 % de los datos de la tabla Marca ordenado descendente. Select TOP 100 PERCENT IdMarca, Descripcion from Marca Order by Descripcion Desc 5. Seleccionar el 10% de los datos de la tabla Marca ordenado por la Descripción de forma Ascendente. Select TOP 10 PERCENT IdMarca, Descripcion from Marca order by Descripcion ASC
Alias. En determinadas circunstancias es necesario asignar un nombre a alguna columna determinada de un conjunto devuelto, otras veces por simple capricho o por otras circunstancias. Para resolver todas ellas tenemos la palabra reservada AS que se encarga de asignar el nombre que deseamos a la columna deseada. Ejemplo: Seleccionar la Descripción de la tabla marca, devolviendo como nombre de la Columna la palabra Marca.
Select Descripcion AS Marca from Marca Consultas con Criterios Sintaxis de consultas con Criterios SELECT Campo1, Campo2, CampoN FROM Tabla ORDER BY Campo1 WHERE Criterio
Select = (Seleccione) Campo1,Campo2,CampoN = (Campo(S) que deseamos Consultar) From = (De la tabla) Tabla1 = (Nombre de la Tabla) Where = (Inicia el bloque del o los criterios) Campo1=Valor1 = (Campos que se van a utilizar para buscar el criterio) ORDER BY CAMPO1 ASC/DESC = (Indica que se va a establecer un orden) ES OPCIONAL.
Seleccionar de la tabla Marca los campos IdMarca, Descripción del registro cuya Descripción sea Igual Toyota. Select IdMarca, Descripcion from Marca where Descripcion = 'Toyota Seleccione de la tabla Persona todos los campos del registro cuyo Nombre sea igual a Luis Rafael Select * from Persona where Nombre='Luis Rafael'