aplicaciones distribuidas 01
TRANSCRIPT
-
7/22/2019 Aplicaciones Distribuidas 01
1/119
IInnssttrruuccttoorr::CCuueevvaaVVaallvveerrddeeDDiieeggooAAllbbeerrttoo ddiieeggooaallbbeerrttoo__11998877@@hhoottmmaaiill..ccoomm
CCaappttuullooIITTrraabbaajjaannddooyyCCoonnoocciieennddooSSQQLLSS
eerrvveerr22000088
1
DDeessaarrrroollllooDDeeAApplliiccaacciioonneess DDiissttrriibbuuiiddaasseennccoonnAADDOO..NNeett33..55yySSQQLLSSEERRVVEERR22000088
TTrraabbaajjaannddooyyCCoonnoocciieennddooSSQQLL
SSeerrvveerr22000088
-
7/22/2019 Aplicaciones Distribuidas 01
2/119
IInnssttrruuccttoorr::CCuueevvaaVVaallvveerrddeeDDiieeggooAAllbbeerrttoo ddiieeggooaallbbeerrttoo__11998877@@hhoottmmaaiill..ccoomm
CCaappttuullooII
TTrraabbaajjaannddooyyCCoonnoocciieennddooSSQQLLSS
eerrvveerr22000088
2
DDeessaarrrroollllooDDeeAApplliiccaacciioonneess DDiissttrriibbuuiiddaasseennccoonnAADDOO..NNeett33..55yySSQQLLSSEERRVVEERR22000088
IINNTTRROODDUUCCCCIIOONNAALLAASSBBAASSEESSDDEEDDAATTOOSS
QQUUEESSUUNNAABBAASSEEDDEEDDAATTOOSS??
En la vida cotidiana se interacciona continuamente con entidades tales como personas, documentos uotros. En una empresa, las entidades estn representadas por los operarios, los empleados, los clientes, los
proveedores, las facturas. En un hospital nos encontraramos con los mdicos, pacientes, enfermeras,cuadros clnicos, etc. Puesto que en cada caso se debe trabajar con una gran cantidad de datos, surge lanecesidad de almacenarlos de manera que nos resulten de fcil acceso en cada momento y, porconsiguiente, tiles a nuestras actividades. Si por ejemplo cada da debemos gestionar varias decenas declientes y facturas, utilizaremos un sistema para memorizar los datos como, por ejemplo, un archivo, msbien antes que recurrir nicamente a la memoria de su computador.
Las fichas aparecen reagrupadas en archivos, cada uno de los cuales contiene en general las fichas de unslo tipo, las de los proveedores o las de los productos. Este sistema recibe el nombre de base de datos,que no es ninguna otra cosa ms que una coleccin de informaciones tales como el catlogo de los ficherosde una biblioteca, un listn telefnico o una enciclopedia. Los programas de gestin de base de datos
(Database) estn programados para realizar operaciones que nos permiten acceder y, eventualmente,modificar los datos almacenados. Estas operaciones consisten en: Introduccin, cancelacin, modificacin ybsqueda de informacin a partir de los criterios seleccionados por el usuario de orden, clasificacin eimpresin de los listados, por ejemplo, bajo el formato de etiquetas adhesivas para sobres.
EESSTTRRUUCCTTUURRAADDEELLAASSBBAASSEESSDDEEDDAATTOOSS
Una vez se ha instalado Microsoft SQL Server 2005 y se ha diseado una distribucin de bases de datos ydiscos, se est preparado para crear una base de datos. SQL Server 2005 hace uso de los mtodosmejorados de almacenamiento de datos y administracin del espacio que se presentaron en SQL Server
2000. Las versiones anteriores del producto utilizaban dispositivos lgicos y segmentos de un tamao fijopara el almacenamiento de los datos; SQL Server 2005 usa archivos y grupos de archivos que pueden serconfigurados para que crezcan o decrezcan automticamente.
BBAASSEESSDDEEDDAATTOOSSDDEESSQQLLSSEERRVVEERR
SQL Server soporta bases de datos del sistema y bases de datos del usuario.Las bases de datos del sistema, almacenan informacin que permite operar y administrar el sistema,mientras que las de usuario almacenan los datos requeridos por las operaciones del cliente.Las bases de datos del sistema son:
-
7/22/2019 Aplicaciones Distribuidas 01
3/119
IInnssttrruuccttoorr::CCuueevvaaVVaallvveerrddeeDDiieeggooAAllbbeerrttoo ddiieeggooaallbbeerrttoo__11998877@@hhoottmmaaiill..ccoomm
CCaappttuullooII
TTrraabbaajjaannddooyyCCoonnoocciieennddooSSQQLLSS
eerrvveerr22000088
3
DDeessaarrrroollllooDDeeAApplliiccaacciioonneess DDiissttrriibbuuiiddaasseennccoonnAADDOO..NNeett33..55yySSQQLLSSEERRVVEERR22000088
MMaasstteerr
La base de datos master se compone de las tablas de sistema que realizan el seguimiento de la instalacindel servidor y de todas las bases de datos que se creen posteriormente. Asimismo controla las asignacionesde archivos, los parmetros de configuracin que afectan al sistema, las cuentas de inicio de sesin. Estabase de datos es crtica para el sistema, as que es bueno tener siempre una copia de seguridad actualizada.
TTeemmppddbb
Es una base de datos temporal, fundamentalmente un espacio de trabajo, es diferente a las dems basesde datos, puesto que se regenera cada vez que arranca SQL Server. Se emplea para las tablas temporalescreadas explcitamente por los usuarios, para las tablas de trabajo intermedias de SQL Server durante elprocesamiento y la ordenacin de las consultas.
MMooddeell
Se utiliza como plantilla para todas las bases de datos creadas en un sistema.
Cuando se emite una instruccin CREATE DATABASE, la primera parte de la base de datos se crea copiandoel contenido de la base de datos model, el resto de la nueva base de datos se llena con pginas vacas.
MMssddbb
Es empleada por el servicio SQL Server Agent para guardar informacin con respecto a tareas deautomatizacin como por ejemplo copias de seguridad y tareas de duplicacin, asimismo solucin aproblemas.
La informacin contenida en las tablas que contiene esta base de datos, es fcilmente accedida desde elAdministrador Empresarial, as que se debe tener cuidado de modificar esta informacin directamente a
menos que se conozca muy bien lo que se est haciendo.
DDiissttrriibbuuttiioonn
Almacena toda la informacin referente a la distribucin de datos basada en un proceso de replicacin.
-
7/22/2019 Aplicaciones Distribuidas 01
4/119
IInnssttrruuccttoorr::CCuueevvaaVVaallvveerrddeeDDiieeggooAAllbbeerrttoo ddiieeggooaallbbeerrttoo__11998877@@hhoottmmaaiill..ccoomm
CCaappttuullooII
TTrraabbaajjaannddooyyCCoonnoocciieennddooSSQQLLSS
eerrvveerr22000088
4
DDeessaarrrroollllooDDeeAApplliiccaacciioonneess DDiissttrriibbuuiiddaasseennccoonnAADDOO..NNeett33..55yySSQQLLSSEERRVVEERR22000088
Las TTaabbllaass son objetos de la base de datos que contienen la informacin de los usuarios, estos datos estnorganizados en filas y columnas, similar al de una hoja de clculo. Cada columna representa un dato aisladoy en bruto que por s solo no brinda informacin, por lo tanto estas columnas se deben agrupar y formaruna fila para obtener conocimiento acerca del objeto tratado en la tabla. Por ejemplo, puede definir unatabla que contenga los datos de los productos ofertados por una tienda, cada producto estararepresentado por una fila mientras que las columnas podran identificar los detalles como el cdigo del
producto, la descripcin, el precio, las unidades en stock, etc.
Una Vista es un objeto definido por una consulta. Similar a tabla, la vista muestra un conjunto de columnasy filas de datos con un nombre, sin embargo, en la vista no existen datos, estos son obtenidos desde lastablas subyacentes a la consulta. De esta forma si la informacin cambia en las tablas, estos cambiostambin sern observados desde la vista. Fundamental emplean para mostrar la informacin relevantepara el usuario y ocultar la complejidad de las consultas.
Los tipos de datos especifican que tipo de valores son permitidos en cada una de las columnas queconforman la estructura de la fila. Por ejemplo, si desea almacenar precios de productos en una columnadebera especificar que el tipo de datos sea Money, si desea almacenar nombres debe escoger un tipo dedato que permita almacenar informacin de tipo carcter.
SQL Server nos ofrece un conjunto de tipos de datos predefinidos, pero tambin existe la posibilidad dedefinir tipos de datos de usuario.
Un Procedimiento Almacenado es una serie de instrucciones SQL pre compiladas las cuales organizadaslgicamente permiten llevar a cabo una operacin transaccional o de control. Un Procedimientoalmacenado siempre se ejecuta en el lado del Servidor y no en la mquina Cliente desde la cual se hace elrequerimiento. Para ejecutarlos deben ser invocados explcitamente por los usuarios.
Un Desencadenador es un Procedimiento Almacenado especial el cual se invoca automticamente anteuna operacin de Insert, Update o Delete sobre una tabla. Un Desencadenador puede consultar otrastablas y puede incluir complejas instrucciones SQL, se emplean para mantener la integridad referencial,preservando las relaciones definidas entre las tablas cuando se ingresa o borra registros de aquellas tablas.
Los Valores Predeterminados especifican el valor que SQL Server insertar en una columna cuando elusuario no ingresa un dato especfico. Por ejemplo, si se desconoce el apellido materno de un empleadoSQL Server podra incluir automticamente la cadena NN para identificar este campo.
Las Reglas son objetos que especifican los valores aceptables que pueden ser ingresados dentro de unacolumna particular. Las Reglas son asociadas a una columna o a un tipo de dato definido por el usuario. Unacolumna o un Tipo de dato pueden tener solamente una Regla asociada con l.
Las Restricciones son restricciones que se asignan a las columnas de una tabla y son controladasautomticamente por SQL Server.
Esto nos provee las siguientes ventajas:
Se puede asociar mltiples ccoonnssttrraaiinnttssa una columna, y tambin se puede asociar un constraints amltiples columnas.
Se pueden crear los Restricciones al momento de crear la tabla CREATE TABLE.
Los Restricciones conforman el standarsANSI para la creacin y alteracin de tablas, estos no son
extensiones del TransactSQL.
-
7/22/2019 Aplicaciones Distribuidas 01
5/119
IInnssttrruuccttoorr::CCuueevvaaVVaallvveerrddeeDDiieeggooAAllbbeerrttoo ddiieeggooaallbbeerrttoo__11998877@@hhoottmmaaiill..ccoomm
CCaappttuullooII
TTrraabbaajjaannddooyyCCoonnoocciieennddooSSQQLLSS
eerrvveerr22000088
5
DDeessaarrrroollllooDDeeAApplliiccaacciioonneess DDiissttrriibbuuiiddaasseennccoonnAADDOO..NNeett33..55yySSQQLLSSEERRVVEERR22000088
Se puede usar un constraintspara forzar la integridad referencial, el cual es el proceso de mantenerrelaciones definidas entre tablas cuando se ingresa o elimina registros en aquellas tablas.
Los ndices de SQL Server son similares a los ndices de un libro que nos permiten llegar rpidamente a laspginas deseadas sin necesidad de pasar hoja por hoja, de forma similar los ndices de una tabla nospermitirn buscar informacin rpidamente sin necesidad de recorrer registro por registro por toda la
tabla. Un ndice contiene valores y punteros a las filas donde estos valores se encuentran.
CCrreeaacciinnddeeBBaasseeddeeDDaattooss
En trminos sencillos una base de datos de SQL Server es una coleccin de objetos que contiene y
administra datos. Antes de crear una base de datos es importante entender como es que SQL Serveralmacena la informacin.
-
7/22/2019 Aplicaciones Distribuidas 01
6/119
IInnssttrruuccttoorr::CCuueevvaaVVaallvveerrddeeDDiieeggooAAllbbeerrttoo ddiieeggooaallbbeerrttoo__11998877@@hhoottmmaaiill..ccoomm
CCaappttuullooII
TTrraabbaajjaannddooyyCCoonnoocciieennddooSSQQLLSS
eerrvveerr22000088
6
DDeessaarrrroollllooDDeeAApplliiccaacciioonneess DDiissttrriibbuuiiddaasseennccoonnAADDOO..NNeett33..55yySSQQLLSSEERRVVEERR22000088
PPggiinnaassyyeexxtteennssiioonneess
Antes de crear una base de datos con SQL Server 2000, debemos tomar en cuenta que la unidad bsica dealmacenamiento en SQL Server es la pgina (data page), el tamao de cada padre es de 8 KB, lo cualrepresenta un total de 128 pginas por cada megabyte.
El comienzo de cada pgina es una cabecera de 96 bytes que se utiliza para almacenar informacin decabecera tal como el tipo de pgina, la cantidad de espacio libre de la pgina y el Id. Del objeto propietariode la pgina.
Existen ocho tipos de pginas en los archivos de datos de una base de datos SQL Server 2000.
Tipo de pgina Contenido
DatosFilas con todos los datos excepto los de tipo text,ntext e image.
ndice Entradas de ndicesTexto o imagen Datos de tipo text, ntexte image.
Mapa de asignacin global/Mapa de asignacin global Informacin acerca de las extensiones asignadas.Secundario
Espacio libre en la pginaInformacin acerca del espacio libre disponible enlas pginas.
Mapandice.
de asignacin de Informacin acerca de las extensiones utilizadas porun tabla o ndice
BulkChanged
Map
Informacin de los extends modificados porOperacin bulk desde el ltimo backup del log.
Los archivos de registro (LOG) no contienen pginas, contienen series de registros.Las pginas de datos contienen todos los datos de las filas de datos excepto los datos text, ntext e image,que estn almacenados en pginas separadas. Las filas de datos se colocan en las pginas una acontinuacin de otra, empezando inmediatamente despus de la cabecera, al final de cada pgina seencuentra una tabla de posiciones de filas que contiene una entrada por cada fila de la pgina y cadaentrada registra la posicin, desde el principio de la pgina, del primer byte de la fila. Las entradas de latabla de posiciones de filas estn en orden inverso a la secuencia de las filas de la pgina.
-
7/22/2019 Aplicaciones Distribuidas 01
7/119
IInnssttrruuccttoorr::CCuueevvaaVVaallvveerrddeeDDiieeggooAAllbbeerrttoo ddiieeggooaallbbeerrttoo__11998877@@hhoottmmaaiill..ccoomm
CCaappttuullooII
TTrraabbaajjaannddooyyCCoonnoocciieennddooSSQQLLSS
eerrvveerr22000088
7
DDeessaarrrroollllooDDeeAApplliiccaacciioonneess DDiissttrriibbuuiiddaasseennccoonnAADDOO..NNeett33..55yySSQQLLSSEERRVVEERR22000088
En SQL Server, las filas no pueden continuar en otras pginas.
Las extensiones son la unidad bsica de asignacin de espacio a las tablas e ndices.
Consta de 8 pginas contiguas, es decir 64 KB. Lo cual representa 16 extensiones por MB.
Para hacer que la asignacin de espacio sea eficiente, SQL Server 2000 no asigna extensiones
enteras a tablas con poca cantidad de datos. SQL Server 2000 tiene dos tipos de extensiones:
Las extensiones uniformes son propiedad de un nico objeto; slo el objeto propietario puedeutilizar las ocho pginas de la extensin.
Extensiones mixtas, pueden estar compartidas por hasta ocho objetos.
Las tablas o ndices nuevos son asignados a pginas de extensiones mixtas. Cuando la tabla o el ndice
crecen hasta el punto de ocupar ocho pginas, se pasan a extensiones uniformes.
Archivos y grupos de archivos fsicos de la base de datos
Un archivo de base de datos no es ms que un archivo del sistema operativo. Una base de datos sedistribuye en por lo menos dos archivos, aunque es muy probable que sean varios los archivos de base dedatos que se especifican al crear o al modificar una base de datos.
Principalmente SQL Server divide su trabajo en un archivo para datos y otro para el registro de lastransacciones (log).
SQL Server 2000 permite los tres siguientes tipos de archivos:
Archivos de datos primariosToda base de datos tiene un archivo de datos primario que realiza el seguimiento de todos los demsarchivos, adems de almacenar datos. Por convenio este archivo tiene la extensin MDF.
Archivos de datos secundariosUna base de datos puede tener cero o varios archivos de datos secundarios. Por convenio la extensinrecomendada para los archivos de datos secundarios es NDF.
Archivos de registro (LOG)Todas las bases de datos por lo menos tendrn un archivo de registro que contiene la informacinnecesaria para recuperar todas las transacciones que suceden sobre la misma. Por convenio la extensin deeste archivo es LDF.
-
7/22/2019 Aplicaciones Distribuidas 01
8/119
IInnssttrruuccttoorr::CCuueevvaaVVaallvveerrddeeDDiieeggooAAllbbeerrttoo ddiieeggooaallbbeerrttoo__11998877@@hhoottmmaaiill..ccoomm
CCaappttuullooII
TTrraabbaajjaannddooyyCCoonnoocciieennddooSSQQLLSS
eerrvveerr22000088
8
DDeessaarrrroollllooDDeeAApplliiccaacciioonneess DDiissttrriibbuuiiddaasseennccoonnAADDOO..NNeett33..55yySSQQLLSSEERRVVEERR22000088
Por lo tanto al crear una base de datos, debemos considerar las siguientes premisas y reglas para elalmacenamiento de los datos:
1. Todas las Bases de Datos tienen un archivo de base de datos primario (.mdf) y uno para el Log deTransacciones (.ldf). Adems puede tener archivos de datos secundarios (.ndf).
2. Cuando se crea una Base de Datos, una copia de la Base de Datos Model, la cual incluye tablas delsistema, es copiada en la Nueva Base de Datos.
3. La Data es almacenada en bloques de 8-kilobytes (KB) de espacio de disco contiguo llamadopginas.
4. Las filas o registros no pueden atravesar pginas. Esto, es, que la mxima cantidad de datos en unafila de datos simple es de 8060 bytes.
5. Las tablas y los ndices son almacenados en Extents. Un Extents consta de ocho pginas contiguas, osea 64 KB.
6. El Log de Transacciones lleva toda la informacin necesaria para la recuperacin de la Base deDatos en una eventual cada del sistema. Por default, el tamao del Log de Transacciones es del25% del tamao de los archivos de datos. Use esta configuracin como punto de partida y ajuste deacuerdo a las necesidades de su aplicacin.
AArrcchhiivvoossddeeRReeggiissttrroo((LLOOGGddeeTTrraannssaacccciioonneess))
El LOG de transacciones archiva todas las modificaciones de los datos tal cual son ejecutados. El proceso es
como sigue:
1. Una modificacin de datos es enviada por la aplicacin cliente.
2. Cuando una modificacin es ejecutada, las pginas afectadas son ledas del disco a memoria (Buffer
Cache), provista de las pginas que no estn todava en la Data Cache del Queryprevio.
3. Cada comando de modificacin de datos es archivado en el LOG. El cambio siempre es archivado en
el LOG y es escrito en el disco antes que el cambio sea hecho en la Base de Datos. Este tipo de LOG
es llamado LOG de tipo write-ahead.
4. Una vez que las pginas de datos residen en el Buffer Cache, y las pginas de LOG son archivadas
sobre el disco en el archivo del LOG, el proceso de CHECKPOINT, escribe todas las transacciones
completas a la Base de Datos en el disco.
Si el sistema falla, automticamente el proceso de recuperacin usa el LOG de Transacciones para llevarhacia delante todas las transacciones comprometidas (COMMIT) y llevar hacia atrs alguna transaccinincompleta (ROLLBACK).
-
7/22/2019 Aplicaciones Distribuidas 01
9/119
IInnssttrruuccttoorr::CCuueevvaaVVaallvveerrddeeDDiieeggooAAllbbeerrttoo ddiieeggooaallbbeerrttoo__11998877@@hhoottmmaaiill..ccoomm
CCaappttuullooII
TTrraabbaajjaannddooyyCCoonnoocciieennddooSSQQLLSS
eerrvveerr22000088
9
DDeessaarrrroollllooDDeeAApplliiccaacciioonneess DDiissttrriibbuuiiddaasseennccoonnAADDOO..NNeett33..55yySSQQLLSSEERRVVEERR22000088
Los marcadores de transaccin en el LOGson usados durante la recuperacin automtica para determinarlos puntos de inicio y el fin de una transaccin. Una transaccin es considerada completa cuando elmarcador BEGIN TRANSACTIONtiene un marcador asociado COMMITTRANSACTION. Las pginas de datos
son escritas al disco cuando ocurre el CHECKPOINT.
CCrreeaacciinnddeeuunnaaBBaasseeddeeDDaattoossUUttiilliizzaannddooeelllleenngguuaajjeeSSQQLL
Otra de las formas de crear una base de datos es a travs del Analizador de Consultas, donde emplearemosla sentencia CREATE DATABASE, cuya sintaxis reducida es la siguiente:
CREATE DATABASE NombreBaseDatos[ ON [PRIMARYNAME = nombreArchivoLgico,
FILENAME = 'nombreArchivoSO',SIZE = tamao,MAXSIZE = { tamaoMximo | UNLIMITED } ,FILEGROWTH = incrementoCrecimiento) [,n]][ LOG ONNAME = nombreArchivoLgico,FILENAME = 'nombreArchivoSO',SIZE = tamao,MAXSIZE = { tamaoMximo | UNLIMITED } ,FILEGROWTH = incrementoCrecimiento) [,n]
[COLLATE nombre_collation] [ FOR LOAD | FOR ATTACH ]
-
7/22/2019 Aplicaciones Distribuidas 01
10/119
IInnssttrruuccttoorr::CCuueevvaaVVaallvveerrddeeDDiieeggooAAllbbeerrttoo ddiieeggooaallbbeerrttoo__11998877@@hhoottmmaaiill..ccoomm
CCaappttuullooII
TTrraabbaajjaannddooyyCCoonnoocciieennddooSSQQLLSS
eerrvveerr22000088
10
DDeessaarrrroollllooDDeeAApplliiccaacciioonneess DDiissttrriibbuuiiddaasseennccoonnAADDOO..NNeett33..55yySSQQLLSSEERRVVEERR22000088
AArrgguummeennttooss
NNOOMMBBRREEBBAASSEEDDAATTOOSSEs el nombre de la nueva base de datos, deben ser nicos en un servidor y pueden tener hasta 128caracteres, a menos que no se especifique ningn nombre lgico para el registro. Si no se especifica ningnnombre lgico de archivo de registro, SQL Server genera un nombre lgico al anexar un sufijo a
nombreBaseDatos.
OONNEspecifica que los archivos de disco utilizados para almacenar la parte de datos (archivos de datos) se handefinido explcitamente. La palabra clave va seguida de una lista delimitada por comas de elementos quedefinen los archivos de datos del grupo de archivos principal.
PPRRIIMMAARRYYEspecifica que la lista de archivos est asociada al grupo principal. Este grupo contiene todas las tablas delsistema de base de datos. Tambin contiene todos los objetos no asignados a los grupos de archivos deusuario. El primer archivo especificado pasa a ser el archivo principal, el cual contiene el inicio lgico de la
base de datos y de las tablas del sistema. Una base de datos slo puede tener un archivo principal. Si no seespecifica PRIMARY, el primer archivo enumerado en la instruccin CREATE DATABASEse convierte en elarchivo principal.
LLOOGGOONNEspecifica que los archivos de registro de la base de datos (archivos de registro) se han definidoexplcitamente. La palabra clave va seguida de una lista delimitada por comas la cual define lascaractersticas de los archivos de registro. Si no se especifica LOG ON, se crea automticamente un nicoarchivo de registro con un nombre generado por el sistema y un tamao que es el 25% de la suma de lostamaos de todos los archivos de datos de la base de datos.
FFOORRLLOOAADDClusula que se mantiene por compatibilidad con versiones anteriores de SQL Server.La base de datos se crea con la opcin de base de datos dbo use only activada y el estado se establece en"cargando". En realida esto no es necesario en SQL Server 7.0 porque la instruccin RESTORE puede volvera crear la base de datos como parte de la operacin de restauracin.
FFOORRAATTTTAACCHHCrea la base de datos desde un conjunto existente de archivos del sistema operativo.Debe existir una entrada de archivos que determine cul es el archivo principal, las otras entradas sonnecesarias si existen archivos creados en una ruta de acceso distinta de cuando se cre la base de datos porprimera vez o se adjunt por ltima vez.
Utilice el procedimiento almacenado del sistema sp_attach_db en lugar de emplear
CCRREEAATTEEDDAATTAABBAASSEEFFOORRAATTTTAACCHH directamente, esto deber emplearlo si debe especificar ms de 16archivos.
CCOOLLLLAATTEEEspecifica el conjunto de caracteres que se emplear para almacenar informacin en la base de datos, sepuede emplear un conjunto de caracteres especificado por Windows o por SQL Server. De no especificarsese emplear el conjunto de caracteres seleccionado en el momento de la instalacin
NNAAMMEEEspecifica el nombre lgico del archivo.No se requiere este parmetro cuando se especifica FOR ATTACH.Este nombre es el utilizado para referenciar al archivo en las sentencias del Transact-SQL que se ejecuten despus.
-
7/22/2019 Aplicaciones Distribuidas 01
11/119
IInnssttrruuccttoorr::CCuueevvaaVVaallvveerrddeeDDiieeggooAAllbbeerrttoo ddiieeggooaallbbeerrttoo__11998877@@hhoottmmaaiill..ccoomm
CCaappttuullooII
TTrraabbaajjaannddooyyCCoonnoocciieennddooSSQQLLSS
eerrvveerr22000088
11
DDeessaarrrroollllooDDeeAApplliiccaacciioonneess DDiissttrriibbuuiiddaasseennccoonnAADDOO..NNeett33..55yySSQQLLSSEERRVVEERR22000088
FFIILLEENNAAMMEEEspecifica el nombre de archivo del sistema (archivo fsico).Se debe especificar la ruta de acceso y nombre de archivo que el sistema operativo utiliza cuando crea labase de datos. La ruta de acceso debe especificar un directorio en el servidor sobre el que se instalo SQLServer.No se puede especificar un directorio en un sistema comprimido de archivos.
SSIIZZEEEspecifica el tamao para el archivo. De no hacerlo SQL Server utiliza el tamao del archivo principal de labase de datos model.
Cuando este parmetro no es especificado para un archivo secundario o de registro SQLServer automticamente le asigna 1 MB.El valor mnimo a asignar es de 512 KB. Si no se especifica tamao, el valor predeterminado es 1 MB. Eltamao especificado para el archivo principal debe tener al menos el tamao del archivo principal de labase de datos model.
MMAAXXSSIIZZEE
Especifica el tamao mximo de crecimiento del archivo. Se pueden utilizar los sufijos KB y MB, el valorpredeterminado es MB. Especifique un nmero entero; no incluya decimales. Si no se especifica, el archivoaumenta hasta que el disco est lleno.
UUNNLLIIMMIITTEEDDEspecifica que el archivo aumenta de tamao hasta que el disco est lleno.
FFIILLEEGGRROOWWTTHHEspecifica el incremento de crecimiento del archivo, este valor no puede exceder el valor MAXSIZE. Empleeun nmero entero. Un valor 0 indica que no hay crecimiento.El valor se puede especificar en MB, KB o %, el valor predeterminado es MB. Cuando se especifica %, el
tamao de incremento de crecimiento es el porcentaje especificado del tamao del archivo en el momentoen que tiene lugar el incremento. De no emplear FILEGROWTH, el valor predeterminado es 10% y el valormnimo es 64 KB. El tamao especificado se redondea al mltiplo de 64 KB ms cercano.
OObbsseerrvvaacciioonneess
Emplee CREATE DATABASE para crear una base de datos y los archivos que almacenan sta. SQL Serverimplementa CREATE DATABASE en dos pasos:
SQL Server utiliza una copia de model para inicializar la base de datos y sus metadatos.SQL Server rellena el resto de la base de datos con pginas vacas, excepto las pginas que tengan datos
internos que registren cmo se emplea el espacio en la base de datos.Cualquier objeto definido por el usuario en model se copiar a todas las bases de datos recin creadas.Cada base de datos nueva hereda los valores opcionales de la base de datos model (a menos que seespecifique FOR ATTACH).
En un servidor se puede especificar un mximo de 32,767 bases de datos.Cuando especfica una instruccin CREATE DATABASEnombreBaseDatos sin parmetros adicionales, labase de datos se crea con el mismo tamao que model.Cada base de datos tiene un propietario con capacidad para realizar actividades especiales. El propietarioes el usuario que crea la base de datos, este propietario se puede cambiar mediante sp_changedbowner
Para mostrar un informe de una base de datos o de todas las bases de datos de un servidor con SQL Server,ejecute sp_helpdb. Para obtener un informe acerca del espacio utilizado en una base de datos, emplee
-
7/22/2019 Aplicaciones Distribuidas 01
12/119
IInnssttrruuccttoorr::CCuueevvaaVVaallvveerrddeeDDiieeggooAAllbbeerrttoo ddiieeggooaallbbeerrttoo__11998877@@hhoottmmaaiill..ccoomm
CCaappttuullooII
TTrraabbaajjaannddooyyCCoonnoocciieennddooSSQQLLSS
eerrvveerr22000088
12
DDeessaarrrroollllooDDeeAApplliiccaacciioonneess DDiissttrriibbuuiiddaasseennccoonnAADDOO..NNeett33..55yySSQQLLSSEERRVVEERR22000088
sp_spaceused. Para obtener un informe de los grupos de archivos de una base de datos, utilicesp_helpfilegroup, y utilice sp_helpfile para obtener el informe de los archivos de la base de datos.
QQuuiinneessppuueeddeennccrreeaarrbbaasseessddeeddaattooss??
En forma predeterminada podrn hacerlos los usuarios que pertenecen al rol sysadmin y dbcreator. Los
miembros de las funciones fijas de servidor sysadmin y SecurityAdmin pueden conceder permisos CREATEDATABASE a otros inicios de sesin. Los miembros de las funciones fijas de servidor sysadmin y dbcreatorpueden agregar otros inicios de sesin a la funcin dbcreator. El permiso CREATE DATABASE debeconcederse explcitamente; no se concede mediante la instruccin GRANT ALL.
Estos permisos se limitan a unos cuantos inicios de sesin para mantener el control de la utilizacin de losdiscos del equipo que ejecuta SQL Server.
Ejemplos de creacin de base de datos empleando el Analizador de Consultas Primero ingrese al Analizadorde Consultas para ello primero debe especificar el tipo de autentificacin a realizar del sistema o estndar,vea la siguiente figura:
HHaabbiilliittaarrlloosssseerrvviicciioossddeeSSQQLLsseerrvveerr
QQuupprroocceeddiimmiieennttoossiigguuiippaarraahhaabbiilliittaarrlloosssseerrvviicciiooss??
-
7/22/2019 Aplicaciones Distribuidas 01
13/119
IInnssttrruuccttoorr::CCuueevvaaVVaallvveerrddeeDDiieeggooAAllbbeerrttoo ddiieeggooaallbbeerrttoo__11998877@@hhoottmmaaiill..ccoomm
CCaappttuullooII
TTrraabbaajjaannddooyyCCoonnoocciieennddooSSQQLLSS
eerrvveerr22000088
13
DDeessaarrrroollllooDDeeAApplliiccaacciioonneess DDiissttrriibbuuiiddaasseennccoonnAADDOO..NNeett33..55yySSQQLLSSEERRVVEERR22000088
IInnggrreessaarraaSSQQLLSSeerrvveerr22000055
1. Hacer clic en el botn IInniicciioo> EEjjeeccuuttaarr.2. Dentro de ejecutar digitar lo siguiente sqlwb.exe.
3. Una vez que all indicado el programa aparecer un cuadro de dialogo don uno tiene que asignar elnombre de usuarioy la contraseaO Autenticacin de Windows dependiendo de cmo allestado instalado SQL Server.
4. Hacer clic en Conectar.
5. Una vez que usted halla ingresado al programa como podr observar al lado izquierdo delprograma se muestra el Explorador de Objetos.
QQuuccoonnttiieenneeeelleexxpplloorraaddoorrddeeOObbjjeettooss??
-
7/22/2019 Aplicaciones Distribuidas 01
14/119
IInnssttrruuccttoorr::CCuueevvaaVVaallvveerrddeeDDiieeggooAAllbbeerrttoo ddiieeggooaallbbeerrttoo__11998877@@hhoottmmaaiill..ccoomm
CCaappttuullooII
TTrraabbaajjaannddooyyCCoonnoocciieennddooSSQQLLSS
eerrvveerr22000088
14
DDeessaarrrroollllooDDeeAApplliiccaacciioonneess DDiissttrriibbuuiiddaasseennccoonnAADDOO..NNeett33..55yySSQQLLSSEERRVVEERR22000088
6. Como usted puede observar se muestran los objetos que se encuentran dentro del Explorador deObjetos.
7. Desplegar la carpeta base de datos.8. Luego desplegar la carpeta base de datos del sistema.
DDeessccrriibbiirrccaaddaauunnaaddeellaabbaasseeddeeddaattooss,,qquueesseeeennccuueennttrraannddeennttrrooddeellaaCCaarrppeettaabbaasseeddeeddaattoossddeellssiisstteemmaa??
CCrreeaacciinnddeeuunnaaBBaasseeddeeddaattoossVVaaDDiisseeoo
9. Pulsar el botn derecho dl mouse sobre la carpeta Bases de datos.10.Seleccionar la opcin Nueva base de Datos.
-
7/22/2019 Aplicaciones Distribuidas 01
15/119
IInnssttrruuccttoorr::CCuueevvaaVVaallvveerrddeeDDiieeggooAAllbbeerrttoo ddiieeggooaallbbeerrttoo__11998877@@hhoottmmaaiill..ccoomm
CCaappttuullooII
TTrraabbaajjaannddooyyCCoonnoocciieennddooSSQQLLSS
eerrvveerr22000088
15
DDeessaarrrroollllooDDeeAApplliiccaacciioonneess DDiissttrriibbuuiiddaasseennccoonnAADDOO..NNeett33..55yySSQQLLSSEERRVVEERR22000088
11.Aparecer un cuadro de dialogo donde se tiene que asignar el nombrede la base de datos.12.Asignar el Nombre de Computronic.13.Como usted puede observar el tamao inicial de la base de datos es 1MB.14.Hacer clic en Aceptar.
TTiippoossddeeDDaattoossddeeSSQQLLSSeerrvveerr22000055
SQL Server brinda una serie de tipos de datos para almacenar la informacin, la correcta seleccin del tipode dato es simplemente una cuestin de determinar qu valores desea almacenar, como por ejemplo
carcter, enteros, binario, fechas, etc. Los siguientes objetos tienen tipos de datos:Columnas de tablas y vistas. Parmetros de procedimientos almacenados. Variables.
Funciones de TTrraannssaacctt-SQL que devuelve uno o ms valores de datos de un tipo de datos especfico.
Procedimientos almacenados que devuelven un cdigo, que siempre es de tipo integer.
Al asignar un tipo de datos a un objeto se definen cuatro atributos del objeto:
La clase de datos que contiene el objeto, por ejemplo, carcter, entero o binario.
La longitud del valor almacenado o su tamao.
La precisin del nmero (slo tipos de datos numricos).
La precisin es el nmero de dgitos que puede contener el nmero. Por ejemplo, un objeto
smallint puede contener hasta 5 dgitos, con lo que tiene una precisin de 5. La escala del nmero (slo tipos de datos numricos).
-
7/22/2019 Aplicaciones Distribuidas 01
16/119
IInnssttrruuccttoorr::CCuueevvaaVVaallvveerrddeeDDiieeggooAAllbbeerrttoo ddiieeggooaallbbeerrttoo__11998877@@hhoottmmaaiill..ccoomm
CCaappttuullooII
TTrraabbaajjaannddooyyCCoonnoocciieennddooSSQQLLSS
eerrvveerr22000088
16
DDeessaarrrroollllooDDeeAApplliiccaacciioonneess DDiissttrriibbuuiiddaasseennccoonnAADDOO..NNeett33..55yySSQQLLSSEERRVVEERR22000088
La escala es el mximo nmero de dgitos a la derecha del separador decimal. Por ejemplo, un objeto int nopuede aceptar un separador decimal y tiene una escala de 0. Un objeto money puede tener hasta 4 dgitosa la derecha del separador decimal y tiene una escala de 4.Si un objeto se define como money, puede contener hasta 19 dgitos y 4 de ellos pueden estar a la derechadel decimal. El objeto usa 8 bytes para almacenar los datos. Por tanto, el tipo de datos money tiene unaprecisin de 19, una escala de 4 y una longitud de 8.
UUttiilliizzaarrddaattoossbbiinnaarriiooss
Los tipos de datos binary y varbinary almacenan cadenas de bits. Mientras que los datos de carcter seinterpretan segn la pgina de cdigos de SQL Server, los datos binary y varbinary son, simplemente, unflujo de bits. Los datos binary y varbinary pueden tener una longitud de hasta 8.000 bytes.Las constantes binarias tienen un 0x (un cero y una letra x en minsculas) a la izquierda, seguido de larepresentacin hexadecimal del patrn de bits. Por ejemplo, 0x2A especifica el valor hexadecimal 2A, quees equivalente al valor decimal 42 o un patrn de bits de un byte de 00101010.
Categora Descripcin Tipo de Dato Descripcin
Binario
Almacenan cadenas debits. La data consiste denmeros hexadecimales.Por ejemplo el decimal 245es F5 en hexadecimal.
binaryLa data debe tener una longitud fija(hasta 8 KB).
varbinaryLos datos pueden variar en el nmerode dgitos hexadecimales (hasta 8KB).
imageLa data puede tener una longitudvariable y exceder los 8Kb.
Consisten de unacombinacin de letras,
charLos datos deben tener una longitudfija (Hasta 8 KB).
Caracter smbolos y nmeros. Porejemplo las combinaciones"John928" y"(0*&(%B99nh jkJ".
varcharLa data puede variar en el nmero decaracteres (Hasta 8 KB.)
textLos datos pueden ser caracteres ASCIIque excedan los 8 KB.
Consisten en Fechas en el rango 01 Ene
combinaciones vlidas de Datetime 1753 hasta el 31 Dic 9999 (SeFecha y Hora estos datos. No puede
separar en tipos distintosel almacenamiento de slofechas o slo horas.
requiere 8 bytes por valor).
smalldatetimeFechas en el rango 01 Ene 1900 hasta06 Jun 2079 (Se requiere requires 4bytes por valor).
Consisten en informacin Los datos pueden tener hasta 38
que almacena dgitos, todos los cuales podraninformacin significativadespus del punto
decimalestar a la derecha del punto decimal.Este tipo de dato
Decimal decimal. guarda un valor exacto delnmero y no una aproximacin.
Para SQL Server, el tipo de
numeric dato numeric es equivalente altipo de datos decimal.
Punto Flotante
Nmeros aproximados
(Punto flotante). float
Datos en el rango de 1.79E + 308
hasta 1.79E + 308.
realDatos en el rango de 3.40E + 38 hasta3.40E + 38.
-
7/22/2019 Aplicaciones Distribuidas 01
17/119
IInnssttrruuccttoorr::CCuueevvaaVVaallvveerrddeeDDiieeggooAAllbbeerrttoo ddiieeggooaallbbeerrttoo__11998877@@hhoottmmaaiill..ccoomm
CCaappttuullooII
TTrraabbaajjaannddooyyCCoonnoocciieennddooSSQQLLSS
eerrvveerr22000088
17
DDeessaarrrroollllooDDeeAApplliiccaacciioonneess DDiissttrriibbuuiiddaasseennccoonnAADDOO..NNeett33..55yySSQQLLSSEERRVVEERR22000088
Consiste en informacin Datos en el rango de 2^63 (
numrica positiva o 9223372036854775808) hasta
Enterosnegativa como porejemplo5, 0 y 25.
bigint2^631 (9223372036854775807). Se
requieren de 8 bytes paraAlmacenar estos valores.
Datos en el rango de - 2,147,483,648hasta
int 2,147,483,647. Se requieren de4 bytes para almacenar estos valores.
Categora Descripcin Tipo de Dato Descripcin
Datos en el rango de32,768
smallint Hasta 32,767. Se requieren 2 bytespor cada valor de este tipo.
tinyint Datos entre 0 y 255, se requiere de 1byte.
Cantidades monetarias Datos monetarios entre
positivas o negativas. 922,337,203,685,477.5808 y
money +922, 337, 203, 685,477.5807 (Serequieren 8 bytes por Valor).
Monetario
Datos monetarios entre
smallmoney214,748.3648 y 214,748.3647 (Serequieren de 4 bytes por
Valor).
Consisten en informacinque no recae en ningunade las categorasanteriormentemencionadas.
bit
Datos que consisten de 1 o 0.Emplear este tipo de dato pararepresentar TRUE o FALSE YES oNO.
cursor
Este tipo de dato es empleado porvariables o procedimientosalmacenados que empleanparmetros OUTPUT referenciados aun cursor.
Este tipo de dato es empleado paraindicar la actividad que
timestamp Ocurre sobre una fila. La secuenciade este nmero se
Especiales
Incrementa en formato binario.
Consiste en un nmero hexadecimalque especifica un
uniqueidentifierglobally unique identifier (GUID), estil cuando se deseaasegurar la unicidad de una filaEntre muchas otras.
Almacena varios tipos de datos,
SQL_variant a excepcin de text, ntext,timestamp, image y sql_variant.
Almacena un resultado de una
-
7/22/2019 Aplicaciones Distribuidas 01
18/119
IInnssttrruuccttoorr::CCuueevvaaVVaallvveerrddeeDDiieeggooAAllbbeerrttoo ddiieeggooaallbbeerrttoo__11998877@@hhoottmmaaiill..ccoomm
CCaappttuullooII
TTrraabbaajjaannddooyyCCoonnoocciieennddooSSQQLLSS
eerrvveerr22000088
18
DDeessaarrrroollllooDDeeAApplliiccaacciioonneess DDiissttrriibbuuiiddaasseennccoonnAADDOO..NNeett33..55yySSQQLLSSEERRVVEERR22000088
consulta para su posteriorprocesamiento. Se puede
table emplear para definir variableslocales de tipo table o para retornarlos valores devueltospor una funcin del usuario.
Unicode
Al emplear este tipo dedatos se puedealmacenarSobre una columnavalores que incluyan esteconjunto de caracteres.Hay que recordar que losdatos Unicode empleandos bytes por cadacarcter a representar.
ncharDatos con longitud fija, hasta 4000caracteres Unicode.
nvarcharDatos que pueden variar, hasta 4000caracteres Unicode.
ntext
Datos que exceden los 4000caracteres Unicode.
EEmmpplleeooddeeCCoommaannddoossDDDDLLLL((DDaattaaDDeeffiinniittiioonnLLaanngguuaaggee))
SQL Server 2000 emplea las tablas como objetos de almacenamiento de datos que los usuarios manipulan atravs de sus aplicaciones o va web.Las tablas son objetos compuestos por una estructura (conjunto de columnas) que almacenan informacininterrelacionada (filas) acerca de algn objeto en general.Las tablas se definen para los objetos crticos de una base de datos, por ejemplo CLIENTES y su estructuraestara conformada por cada uno de los atributos que se requieran de los clientes para poder obtenerinformacin de ellos, como por ejemplo: nombres, direcciones, telfonos, celular, ruc, etc.Cada uno de estos atributos tiene un tipo de dato definido y adems la tabla debe permitir asegurar que
cada cdigo de producto es nico en la misma, para asegurarse de no almacenar la informacin del mismocliente dos veces.Las tablas suelen estar relacionadas entre s, para facilitar el hecho de consultas entre mltiples tablas.Podemos distinguir los siguientes tipos de tablas:
TTaabbllaassddeellSSiisstteemmaa
La informacin usada por SQL Server y sus componentes son almacenadas en tablas especialesdenominadas como tablas del sistema. Estas tablas no deben alterarse directamente por el usuarioSi desea obtener informacin almacenada en las tablas del sistema debe usar: Informacin de la vista esquema (schema view).
Procedimientos Almacenados de sistema. Instrucciones Transact-SQL y funciones. SQL-DMO. Catlogo de funciones API.Las tablas del sistema almacenan informacin, llamada Metadata, acerca del sistema y de los objetos de lasbases de datos. Todas las tablas del sistema comienzan con el prefijo SYS.
TTaabbllaassddeellUUssuuaarriioo
PPeerrmmaanneenntteess
Son las tablas donde se almacena la informacin que los usuarios utilizan para sus operaciones. Estainformacin existir hasta que se elimine explcitamente.
-
7/22/2019 Aplicaciones Distribuidas 01
19/119
IInnssttrruuccttoorr::CCuueevvaaVVaallvveerrddeeDDiieeggooAAllbbeerrttoo ddiieeggooaallbbeerrttoo__11998877@@hhoottmmaaiill..ccoomm
CCaappttuullooII
TTrraabbaajjaannddooyyCCoonnoocciieennddooSSQQLLSS
eerrvveerr22000088
19
DDeessaarrrroollllooDDeeAApplliiccaacciioonneess DDiissttrriibbuuiiddaasseennccoonnAADDOO..NNeett33..55yySSQQLLSSEERRVVEERR22000088
TTeemmppoorraalleessEstas son tablas similares a las permanentes que se graban en tempdb, y son eliminadas automticamentecuando ya no son usadas.Hay dos tipos de tablas temporales, locales y globales, difieren una de la otra en sus nombres, su visibilidady su mbito de vida.
Tablas Temporales Locales. El primer carcter del nombre de #, su visibilidad es solamente para laconexin actual del usuario y son eliminadas cuando el usuario se desconecta.
Tablas Temporales Globales. Su nombre comienza con ##, su visibilidad es para cualquier usuario, y soneliminadas luego que todos los usuarios que la referencian se desconectan del SQL Server.
CCrreeaacciinnddeettaabbllaass
Cuando se crea una tabla debe asignarle un nombre a la misma, un nombre a cada columna adems de untipo de datos y de ser necesaria una longitud.Adicional a las caractersticas antes mencionadas, SQL Server 2000 nos brinda la posibilidad de
implementar columnas calculadas, definindolas como frmulas.Los nombres de las columnas deben ser nicos en la tabla
CCoonnssiiddeerraacciioonneessaallccrreeaarrttaabbllaass
Billones de tablas por base de datos.
1024 columnas por tabla.
8060 es el tamao mximo de registro (sin considerar datos image, text y ntext).
Al momento de definir una columna se puede especificar si la columna soporta o no valores NULL.
Para crear tablas debe utilizar la sentencia CREATE TABLE, cuya sintaxis es la siguiente:
CREATE TABLE ( Nom_Columna1 Tipo_de_Dato [NULL l NOT NULL],Nom_Columna2 Tipo_de_Dato [NULL l NOT NULL],Nom_Columna3 As formula ...)GO
CCrreeaacciinnddeeuunnaaTTaabbllaaVVaaAAssiisstteennttee
15.Desplegar las carpetas que ahora se encuentran dentro de la base de datos Computronic.16.Pulsar el botn derecho sobre la carpeta con el nombre de Tablasy seleccionar la opcin Nueva
Tabla.
17.Como usted puede observar al lado derecho se muestra un cuadro.
18.Dentro de este cuadro se puede asignar el nombre de la Columna y el tipo de Dato de la columna eindicar si los valores son nulos o no.
19.Digitar las siguientes columnas para esta nueva Tabla.
-
7/22/2019 Aplicaciones Distribuidas 01
20/119
IInnssttrruuccttoorr::CCuueevvaaVVaallvveerrddeeDDiieeggooAAllbbeerrttoo ddiieeggooaallbbeerrttoo__11998877@@hhoottmmaaiill..ccoomm
CCaappttuullooII
TTrraabbaajjaannddooyyCCoonnoocciieennddooSSQQLLSS
eerrvveerr22000088
20
DDeessaarrrroollllooDDeeAApplliiccaacciioonneess DDiissttrriibbuuiiddaasseennccoonnAADDOO..NNeett33..55yySSQQLLSSEERRVVEERR22000088
20. Indicar el tipo de Dato para cada columna y por ultimo asignar si es nulo o no.21.La estructura de la tabla tiene que quedar tal como se muestra en la siguiente figura.
22.Hacer clic en el botn guardar.
23. Guardar con el nombre de Alumnos.
24.Como usted puede observar en el Explorador de Objetos.25.Dentro de la carpeta base de datosy dentro de la base de datos Computronic.26.Se encuentra la carpeta Tablas, dentro de ella se encuentra la tabla Alumnos.
IInnggrreessaarrRReeggiissttrroossaallaaTTaabbllaa
27.Seleccionar la Tabla alumnos.28.Pulsar el botn derechoy seleccionar la opcin abrir Tabla.
29.Como usted puede observar al lado derecho se muestra la Tabla alumnos.
-
7/22/2019 Aplicaciones Distribuidas 01
21/119
-
7/22/2019 Aplicaciones Distribuidas 01
22/119
IInnssttrruuccttoorr::CCuueevvaaVVaallvveerrddeeDDiieeggooAAllbbeerrttoo ddiieeggooaallbbeerrttoo__11998877@@hhoottmmaaiill..ccoomm
CCaappttuullooII
TTrraabbaajjaannddooyyCCoonnoocciieennddooSSQQLLSS
eerrvveerr22000088
22
DDeessaarrrroollllooDDeeAApplliiccaacciioonneess DDiissttrriibbuuiiddaasseennccoonnAADDOO..NNeett33..55yySSQQLLSSEERRVVEERR22000088
39.Ahora guardela modificacin.
40. Ingrese un nuevo registroen la tabla, pero esta vez ya no asigne el cdigo, como usted ver el
cdigose genera automticamente.
41.Seleccionar la tablay pulsar el botn Derecho del mouse.42.Seleccionar la opcin propiedades.
43.Aparecer un cuadro de dialogo.
44.Dentro de ese cuadro de dialogo, se indica quien ha creado la tabla, la fecha de Creacin, servidor,
etc.
45.Tal como lo puede apreciar en la siguiente figura.
-
7/22/2019 Aplicaciones Distribuidas 01
23/119
IInnssttrruuccttoorr::CCuueevvaaVVaallvveerrddeeDDiieeggooAAllbbeerrttoo ddiieeggooaallbbeerrttoo__11998877@@hhoottmmaaiill..ccoomm
CCaappttuullooII
TTrraabbaajjaannddooyyCCoonnoocciieennddooSSQQLLSS
eerrvveerr22000088
23
DDeessaarrrroollllooDDeeAApplliiccaacciioonneess DDiissttrriibbuuiiddaasseennccoonnAADDOO..NNeett33..55yySSQQLLSSEERRVVEERR22000088
EElliimmiinnaarruunnaabbaasseeddeeddaattooss
46.Seleccionar la base de datos con el nombre de Computronic.
47.Pulsar el botn derecho y seleccionar la opcin eliminar.
48.Aparecer un cuadro de dialogo donde habilitara la opcin Cerrar conexiones Existentes.
49.Finalmente hacer clic en aceptar.
-
7/22/2019 Aplicaciones Distribuidas 01
24/119
IInnssttrruuccttoorr::CCuueevvaaVVaallvveerrddeeDDiieeggooAAllbbeerrttoo ddiieeggooaallbbeerrttoo__11998877@@hhoottmmaaiill..ccoomm
CCaappttuullooII
TTrraabbaajjaannddooyyCCoonnoocciieennddooSSQQLLSS
eerrvveerr22000088
24
DDeessaarrrroollllooDDeeAApplliiccaacciioonneess DDiissttrriibbuuiiddaasseennccoonnAADDOO..NNeett33..55yySSQQLLSSEERRVVEERR22000088
UUttiilliizzaacciinnddeellAAnnaalliizzaaddoorrddeeCCoonnssuullttaass
50.Hacer clic en Nueva Consulta.
CCrreeaacciinnddeeuunnaabbaasseeddeeDDaattoossvvaaccddiiggooSSQQLL
Para crear un objeto dentro SSQQLLsseerrvveerr,,o dentro de una base de datos se utiliza la sseenntteenncciiaa
CCrreeaattee, seguido del OObbjjeettooaaCCrreeaarr((BBaasseeddeeDDaattooss,,TTaabbllaass,,PPrroocceeddiimmiieennttoossAAllmmaacceennaaddooss,,VViissttaass,,
eettcc..))..
51.Escribir el siguiente Script(cdigo SQL).
52.Seleccionar el Scriptdigitado, y pulsar la tecla F5, para ejecutarla sentencia.
53.Explicar el Scriptutilizado, en la sentencia SQL anterior.
FileName._______________________________________________________________________
Size.___________________________________________________________________________
MaxSize.________________________________________________________________________
Filegrowth.______________________________________________________________________
54.Como usted puede observar la base de datos con el nombre de Computronicha sido creada.
55.Si usted verifica la unidad CCde la unidad M PC, se han creado 2archivos correspondientes a labase de datos.
56.Uno es el *logy el otro es el archivo *mdf.
CCuulleessllaaddiiffeerreenncciiaaeennttrreeeellaarrcchhiivvoo**llooggyy**MMddff??
-
7/22/2019 Aplicaciones Distribuidas 01
25/119
IInnssttrruuccttoorr::CCuueevvaaVVaallvveerrddeeDDiieeggooAAllbbeerrttoo ddiieeggooaallbbeerrttoo__11998877@@hhoottmmaaiill..ccoomm
CCaappttuullooII
TTrraabbaajjaannddooyyCCoonnoocciieennddooSSQQLLSS
eerrvveerr22000088
25
DDeessaarrrroollllooDDeeAApplliiccaacciioonneess DDiissttrriibbuuiiddaasseennccoonnAADDOO..NNeett33..55yySSQQLLSSEERRVVEERR22000088
AAbbrriirruunnaabbaasseeddeeddaattoossvvaaSSccrriipptt
Para abrir una base de datos se utiliza la sentencia UUssee..
CCrreeaacciinnddeeuunnaaTTaabbllaaVVaaSSccrriipptt
57.Digitar el siguiente Script, para crear una nueva tabla.
MMooddiiffiiccaarruunnaaTTaabbllaaVVaaSSccrriipptt
58.Se desea agregar una nueva columna a la tabla.
59.Se desea modificar el tipo de dato de la columna Nombre.
60.Se desea eliminar una columna de la tabla Alumnos.
VVaalloorreessaauuttooggeenneerraaddoossppaarraallaassccoolluummnnaass
En SQL Server 2005 se puede definir columnas que obtengan valores generados por el sistema, para ellopodemos hacer uso de:
PPrrooppiieeddaaddIIddeennttiittyy
Permite generar valores secuenciales del sistema, este tipo de valores pueden ser utilizados en columnasque sern empleadas como primarykey.Para emplear esta propiedad debe especificar un valor de inicio y uno de incremento.Recuerde que este tipo de columnas no son editables.
-
7/22/2019 Aplicaciones Distribuidas 01
26/119
IInnssttrruuccttoorr::CCuueevvaaVVaallvveerrddeeDDiieeggooAAllbbeerrttoo ddiieeggooaallbbeerrttoo__11998877@@hhoottmmaaiill..ccoomm
CCaappttuullooII
TTrraabbaajjaannddooyyCCoonnoocciieennddooSSQQLLSS
eerrvveerr22000088
26
DDeessaarrrroollllooDDeeAApplliiccaacciioonneess DDiissttrriibbuuiiddaasseennccoonnAADDOO..NNeett33..55yySSQQLLSSEERRVVEERR22000088
61.Primero tiene que eliminar la columna que usted desea que contenga el valor autogenerado.
62.Luego tiene que crear la nueva columna y esta vez agregar la propiedad IIddeennttiittyy..
Qu es lo que hace la propiedad IIddeennttiittyyaauunnaaccoolluummnnaa??
MMaanntteenniimmiieennttooaauunnaattaabbllaaIInnsseerrttaarr,,EElliimmiinnaarryyAAccttuuaalliizzaarr
Si desea insertar un Nuevo Registro, Se utiliza la Sentencia Insert into.
Sintaxis:
IInnsseerrttIInnttooNNoommbbrreeTTaabbllaa((CCaammppoossddeellaaTTaabbllaa))VVaalluueess((VVaalloorreessaaIInnggrreessaarr))
63.Se desea agregar 5registros a la tabla alumnos.
64.Digitar el siguiente Script.
AAllmmoommeennttooddeeiinnggrreessaarrlloossrreeggiissttrrooss,,qquueettiippooddeeddaattoovvaannccoonnccoommiillllaassiimmpplleeyyqquu
ttiippooddeeddaattoonnoovvaannccoonnccoommiillllaassiimmppllee??
Si desea Eliminar un Registro, Se utiliza la Sentencia Delete.
Sintaxis:
DDeelleetteeNNoommbbrreeTTaabbllaaWWhheerreeCCaammppoo==CCoonnddiicciinn
65.Se desea eliminar de la tabla alumno, el alumno de cdigo 2.
66.Digitar el siguiente Script.
-
7/22/2019 Aplicaciones Distribuidas 01
27/119
IInnssttrruuccttoorr::CCuueevvaaVVaallvveerrddeeDDiieeggooAAllbbeerrttoo ddiieeggooaallbbeerrttoo__11998877@@hhoottmmaaiill..ccoomm
CCaappttuullooII
TTrraabbaajjaannddooyyCCoonnoocciieennddooSSQQLLSS
eerrvveerr22000088
27
DDeessaarrrroollllooDDeeAApplliiccaacciioonneess DDiissttrriibbuuiiddaasseennccoonnAADDOO..NNeett33..55yySSQQLLSSEERRVVEERR22000088
Si desea Actualizar un Registro, Se utiliza la Sentencia Update.
Sintaxis:
UUppddaatteeNNoommbbrreeTTaabbllaasseettccaammppoo11==vvaalloorr11,,ccaammppoo22==vvaalloorr22WWhheerreeCCaammppoo==CCoonnddiicciinn
67.Se desea Actualizar de la tabla alumno, el alumno de cdigo 3.68.Digitar el siguiente Script.
EEjjeerrcciicciiooss
Generar el Script de una base de datos llamada Prueba2 con un archivo de datos de 10 Mb, un
tamao mximo de 20 Mb y un crecimiento de 1Mb., el archivo de registro debe asumir los valorespor default de una base de datos. (Guardar con el Nombre de Prueba01)
Generar una base de datos llamada Titulacin, crear un archivo primario, secundario y detransacciones, crear la base de datos en la unidad D de Mi PC. (Guardar con el Nombre dePrueba02)
Generar una base de datos, que su ruta sea la unidad D de Mi PC. (Guardar con el Nombre dePrueba02)
-
7/22/2019 Aplicaciones Distribuidas 01
28/119
-
7/22/2019 Aplicaciones Distribuidas 01
29/119
IInnssttrruuccttoorr::CCuueevvaaVVaallvveerrddeeDDiieeggooAAllbbeerrttoo ddiieeggooaallbbeerrttoo__11998877@@hhoottmmaaiill..ccoomm
CCaappttuullooII
TTrraabbaajjaannddooyyCCoonnoocciieennddooSSQQLLSS
eerrvveerr22000088
29
DDeessaarrrroollllooDDeeAApplliiccaacciioonneess DDiissttrriibbuuiiddaasseennccoonnAADDOO..NNeett33..55yySSQQLLSSEERRVVEERR22000088
Generar el siguiente Script de la tabla que se muestra a continuacin, tener en cuenta los tipos de
datos.(Guardar con el Nombre de Producto)
Describir los siguientes Tipos de datos:
NNvvaarrcchhaarr..--
MMoonneeyy..--
SSmmaallllDDaatteeTTiimmee..--
NNtteexxtt..--
IImmaaggee..--
-
7/22/2019 Aplicaciones Distribuidas 01
30/119
IInnssttrruuccttoorr::CCuueevvaaVVaallvveerrddeeDDiieeggooAAllbbeerrttoo ddiieeggooaallbbeerrttoo__11998877@@hhoottmmaaiill..ccoomm
CCaappttuullooII
TTrraabbaajjaannddooyyCCoonnoocciieennddooSSQQLLSS
eerrvveerr22000088
30
DDeessaarrrroollllooDDeeAApplliiccaacciioonneess DDiissttrriibbuuiiddaasseennccoonnAADDOO..NNeett33..55yySSQQLLSSEERRVVEERR22000088
RReessttrriicccciioonneess((CCoonnssttaaiinnttss))
Las restricciones son un mtodo declarativo de definicin de la integridad de datos ya que en ellas sedefinen al momento de crear una tabla con la sentencia createTable, o al momento de modificar ladefinicin de la tabla (con la sentencia AlterTable).
En otras palabras, una restriccin forma parte de la definicin de la tabla. Las restricciones son el mtodopreferido para dar fuerza a la integridad de los datos.
TTiippoossddeeRReessttrriicccciioonneess
Las restricciones son un mtodo estndar ANSI para forzar la integridad de los tipos de datos.
Garantizan que los datos ingresados en las columnas sean valores validos y que se mantengan lasrelaciones entre las tablas.
La tabla siguiente descrbelos diferentes tipos de restricciones.
TTiippooddeeRReessttrriicccciinn DDeessccrriippcciinnPRIMARY KEY(Clave primaria)
Garantiza que cada fila o registro en una tabla es nico(a). lacolumna o combinacin de columnas definida como claveprimaria no permite valores duplicados
UNIQUE(Valor no duplicado)
Garantiza que cada valor en una columna es nico. Permitevalores nicos
FOREIGN KEY(Clave Fornea)
Define la columna o combinacin de columnas de una tablasecundaria cuyos valores dependen de la clave primaria de laTabla primaria.
DEFALULT(Valor Predeterminado)
Establece el valor predeterminado para una columna cuandoal insertar una fila no se especifica el valor para dicha
columnaCHECK(Regla de Validacin)
Establece una regla que debe cumplir un valor para que seaun valor aceptable en una Columna
PPaarraarreeaalliizzaarreessttoosseejjeerrcciicciioossuusstteeddttiieenneeqquueeccrreeaarrllaassssiigguuiieenntteessTTaabbllaassyy
bbaasseeddeeDDaattooss
CCrreeaarrllaabbaasseeddeeDDaattoossCCoolleeggiioo
CCrreeaarrllaassssiigguuiieenntteessTTaabbllaass
TTaabbllaaAAlluummnnooss
-
7/22/2019 Aplicaciones Distribuidas 01
31/119
IInnssttrruuccttoorr::CCuueevvaaVVaallvveerrddeeDDiieeggooAAllbbeerrttoo ddiieeggooaallbbeerrttoo__11998877@@hhoottmmaaiill..ccoomm
CCaappttuullooII
TTrraabbaajjaannddooyyCCoonnoocciieennddooSSQQLLSS
eerrvveerr22000088
31
DDeessaarrrroollllooDDeeAApplliiccaacciioonneess DDiissttrriibbuuiiddaasseennccoonnAADDOO..NNeett33..55yySSQQLLSSEERRVVEERR22000088
TTaabbllaaNNoottaass
TTaabbllaaCCuussoo
CCrreeaacciinnddeeuunnaaCCllaavveePPrriimmaarriiaa((PPKK))
SSiinnttaaxxiiss
AAlltteerrTTaabblleeNNoommbbrree__TTaabbllaa
AAddddccoonnssttrraaiinnttPPkk__NNoommbbrree__TTaabbllaa
PPrriimmaarryyKKeeyy((CCoolluummnnaaXX,,CCoolluummnnaaPP,,))
PK_nombre_Tabla es el nombre de la restriccin clave primaria. Se recomienda definir como nombre de
la clave primaria, el nombre de la tabla con el prefijo PK_. Si no se especifica el nombre de la restriccin,
SQL Serverle asigna un nombre.
Columnax, ColumnaP es la columna o combinacin de columnas que se define como Clave primaria. Las
columnas involucradas no deben permitir valores nulos, y adems, no deben tener valores duplicados. En el
caso de una combinacin de columnas, la combinacin vista como una unidad no debe tener valores
duplicados.
1. Asignar llave primariatodas las tablas creadas anteriormente.
-
7/22/2019 Aplicaciones Distribuidas 01
32/119
IInnssttrruuccttoorr::CCuueevvaaVVaallvveerrddeeDDiieeggooAAllbbeerrttoo ddiieeggooaallbbeerrttoo__11998877@@hhoottmmaaiill..ccoomm
CCaappttuullooII
TTrraabbaajjaannddooyyCCoonnoocciieennddooSSQQLLSS
eerrvveerr22000088
32
DDeessaarrrroollllooDDeeAApplliiccaacciioonneess DDiissttrriibbuuiiddaasseennccoonnAADDOO..NNeett33..55yySSQQLLSSEERRVVEERR22000088
2. Establecer llave Primariaa las dems Tablas.
3. Digitar el Script utilizado para la Creacin de las llaves Primarias en las dems Tablas.
.
CCrreeaacciinnddeeuunnaaLLllaavveeFFoorrnneeaa((FFKK))
SSiinnttaaxxiiss
AAlltteerrTTaabblleennoommbbrree__TTaabbllaa
AAddddCCoonnssttrraaiinnttFFkk__NNoommbbrree__TTaabbllaa__TTaabbllaa__RReeffeerreenncciiaaddaa
FFoorreeiiggnnKKeeyy((CCoolluummnnnnaaXX,,CCoolluummnnaaPP))
FFkk__nnoommbbrree__TTaabbllaa__TTaabbllaa__rreeffeerreenncciiaaddaaes el nombre de la restriccin clave fornea. Se recomiendadefinir como nombre de la clave fornea, el nombre de la tabla seguido del nombre de la tablareferenciada, todo con el prefijo FK_. Si no se especifica el nombre de la restriccin, SQL Server le asigna unnombre.
CCoolluummnnaaXX,,CCoolluummnnaaPP,,es la columna O Combinacin de columnas que se define como clave fornea.
TTaabbllaa__RReeffeerreenncciiaa,,es el nombre de la tabla primaria con la que se relaciona con la tabla secundaria quetiene la clave fornea. De modo predeterminado la clave fornea hace referencia la clave primaria de la
Tabla primaria.
1. Asignar llave forneatodas las tablas creadas anteriormente.
-
7/22/2019 Aplicaciones Distribuidas 01
33/119
IInnssttrruuccttoorr::CCuueevvaaVVaallvveerrddeeDDiieeggooAAllbbeerrttoo ddiieeggooaallbbeerrttoo__11998877@@hhoottmmaaiill..ccoomm
CCaappttuullooII
TTrraabbaajjaannddooyyCCoonnoocciieennddooSSQQLLSS
eerrvveerr22000088
33
DDeessaarrrroollllooDDeeAApplliiccaacciioonneess DDiissttrriibbuuiiddaasseennccoonnAADDOO..NNeett33..55yySSQQLLSSEERRVVEERR22000088
2. Establecer llave forneaa las dems Tablas.
3. Digitar el Script utilizado para la Creacin de las LlaveForneaen las dems Tablas.
.
CCrreeaacciinnddeerreessttrriicccciinnVVaalloorrnnooDDuupplliiccaaddoo((UUnniiqquuee))
SSiinnttaaxxiiss
AAlltteerrTTaabblleeNNoommbbrree__TTaabbllaa
AAddddCCoonnssttrraaiinnttUU__nnoommbbrree__ttaabbllaa__nnoommbbrree__CCoolluummnnaa
UUNNIIQQUUEE((CCoolluummnnaaXX,,CCoolluummnnaaPP,,..))
UU__nnoommbbrree__ttaabbllaa__nnoommbbrree__ccoolluummnnaaes el nombre de la restriccin valor no duplicado o UNIQUE. Serecomienda definir como nombre de la restriccin, el nombre de la tabla seguido del nombre de la
columna afectada, todo con el prefijo U_. Si no se especifica el nombre de la restriccin, SQL Server le
asigna un nombre.
CCoolluummnnaaXX,,CCoolluummnnaaPP,,es la columna O combinacin de columnas a la que se aplica la restriccin.
1. Asignar la propiedad Uniqueal Campo Cursode la tabla Curso.
CCrreeaacciinnddeeVVaalloorrpprreeddeetteerrmmiinnaaddoo((DDEEFFAAUULLTT))
SSiinnttaaxxiiss
AAlltteerrTTaabblleennoommbbrree__TTaabbllaa
AAddddCCoonnssttrraaiinnttDDFF__NNoommbbrree__TTaabbllaa__NNoommbbrree__CCoolluummnnaa
DDeeffaauullttvvaalloorr__pprreeddeetteerrmmiinnaaddooffoorrCCoolluummnnaaXX
-
7/22/2019 Aplicaciones Distribuidas 01
34/119
IInnssttrruuccttoorr::CCuueevvaaVVaallvveerrddeeDDiieeggooAAllbbeerrttoo ddiieeggooaallbbeerrttoo__11998877@@hhoottmmaaiill..ccoomm
CCaappttuullooII
TTrraabbaajjaannddooyyCCoonnoocciieennddooSSQQLLSS
eerrvveerr22000088
34
DDeessaarrrroollllooDDeeAApplliiccaacciioonneess DDiissttrriibbuuiiddaasseennccoonnAADDOO..NNeett33..55yySSQQLLSSEERRVVEERR22000088
DDff__nnoommbbrree__ttaabbllaa__nnoommbbrree__CCoolluummnnaa es el nombre de la restriccin valor predeterminado O Default.
Se recomienda definir como nombre de la restriccin, el nombre de la tabla seguido del nombre de la
columna afectada, todo con el prefijo DF_.Si no es especifico el nombre de la restriccin, SQLserverle
asigna un nombre.
VVaalloorr__PPrreeddeetteerrmmiinnaaddooes el valor que se almacena en columnaXcuando al insertar una fila no seespecifica el valor para esa columna.
ColumnaX es la Columna a la que se aplica la restriccin.
1. Se desea asignar valores por defecto a la Columna FechaInscripcionde la Tabla Alumnos.
2. En dicha campo se guardara la Fecha actual del sistema, al momento de ingresar un nuevo registro.
3. Insertaralgunos valores dentro de la Tabla Alumnos.
CCrreeaacciinnddeeuunnaaRReeggllaaddeeVVaalliiddaacciioonneess((CCHHEECCKK))
SSIINNTTAAXXIISS
AAlltteerrTTaabblleennoommbbrree__TTaabbllaa
AAddddccoonnssttrraaiinnttCCKK__nnoommbbrree__TTaabbllaa__nnoommbbrree__CCoolluummnnaa
CChheecckk((CCoonnddiicciinn))
CCKK__nnoommbbrree__ttaabbllaa__nnoommbbrree__CCoolluummnnaaes el nombre de la restriccin regla de validacin O Check. Serecomienda definir como nombre de la restriccin, el nombre de la Tabla Seguido del nombre de la
columna afectada, todo con el prefijo CK_. Si no se especifica el nombre de la restriccin, SQL SERVER le
asigna un nombre.
CCoonnddiicciinnes la expresin que determina como debe ser el valor a ingresar en la columna afectada por la
restriccin.
1. Se desea validar los datos del campo notade la Tabla Notas.
2. En dicho campo se validara la entrada de cada Notaingresada, esta notaesta en promediode 0a
20.
-
7/22/2019 Aplicaciones Distribuidas 01
35/119
IInnssttrruuccttoorr::CCuueevvaaVVaallvveerrddeeDDiieeggooAAllbbeerrttoo ddiieeggooaallbbeerrttoo__11998877@@hhoottmmaaiill..ccoomm
CCaappttuullooII
TTrraabbaajjaannddooyyCCoonnoocciieennddooSSQQLLSS
eerrvveerr22000088
35
DDeessaarrrroollllooDDeeAApplliiccaacciioonneess DDiissttrriibbuuiiddaasseennccoonnAADDOO..NNeett33..55yySSQQLLSSEERRVVEERR22000088
3. Insertar algunos valores en la tabla.
4. Insertar un valor en la columna nota, que no este dentro del rangoestablecido.
55.. Como usted puede observar en el panel resumen aparece un error.
QQuueessllooqquueeqquuiieerreeddeecciirreesseeeerrrroorr??
AAccttuuaalliizzaacciinnyybboorrrraaddooeennccaassccaaddaa
El actualizary/o eliminarregistros en cascada, son opciones que se definen cuando definimos la clave
forneay que le indican al sistema gestor qu hacer en los casos comentados en el punto anterior.
AAccttuuaalliizzaarrrreeggiissttrroosseennccaassccaaddaa::
Esta opcin le indica al sistema gestor de la base de datos que cuando se cambie un valor del campo
clave de la tabla principal, automticamente cambiar el valor de la clave forneade los registros
relacionados en la tabla secundaria.
Por ejemplo, si cambiamos en la tabla de poblaciones(la tabla principal) el valor 1por el valor 10en el
campo cdigo(la clave principal), automticamente se actualizan todos los habitantes (en la tabla
secundaria) que tienen el valor 1 en el campo poblacin (en la clave ajena) dejando 10en vez de 1.
Si no se tiene definida esta opcin, no se puede cambiar los valores de la clave principalde la tabla
principal. En este caso, si intentamos cambiar el valor 1del cdigo de la tabla de poblaciones, no seproduce el cambio y el sistema nos devuelve un error o un mensaje que los registros no se han podido
modificar por infracciones de clave.
-
7/22/2019 Aplicaciones Distribuidas 01
36/119
IInnssttrruuccttoorr::CCuueevvaaVVaallvveerrddeeDDiieeggooAAllbbeerrttoo ddiieeggooaallbbeerrttoo__11998877@@hhoottmmaaiill..ccoomm
CCaappttuullooII
TTrraabbaajjaannddooyyCCoonnoocciieennddooSSQQLLSS
eerrvveerr22000088
36
DDeessaarrrroollllooDDeeAApplliiccaacciioonneess DDiissttrriibbuuiiddaasseennccoonnAADDOO..NNeett33..55yySSQQLLSSEERRVVEERR22000088
CCoonnssuullttaassSSeenncciillllaass
AAddjjuunnttaarruunnaaBBaasseeddeeDDaattooss
1. Copiar la carpeta BaseDatosa la unidad C: de MiPc.
2. Ingresar al SQL Server.
3. Hacer clic en el Botnde Nueva consulta .
4. Escribir el siguiente Scriptdentro del analizador de consulta.
EEssttuuddiiooddeellaaBBaasseeddeeDDaattoossPPoosseeiiddnn
5. Actualizarel Explorador de Objetos .
6. Como usted puede observar se ha generado una nueva Base de Datosllamada Poseidn.
7. Desplegar laCarpeta Tablas.
8. Como usted puede observarla base de datos contiene7 tablas.
CCrreeaacciinnddeeuunnDDiiaaggrraammaaddeebbaasseeddeeddaattooss
9. Pulsarel botn derechosobre la carpeta Diagrama de Base de Datos.
10.Seleccionar la opcinNuevo Diagrama de base de Datos.
-
7/22/2019 Aplicaciones Distribuidas 01
37/119
IInnssttrruuccttoorr::CCuueevvaaVVaallvveerrddeeDDiieeggooAAllbbeerrttoo ddiieeggooaallbbeerrttoo__11998877@@hhoottmmaaiill..ccoomm
CCaappttuullooII
TTrraabbaajjaannddooyyCCoonnoocciieennddooSSQQLLSS
eerrvveerr22000088
37
DDeessaarrrroollllooDDeeAApplliiccaacciioonneess DDiissttrriibbuuiiddaasseennccoonnAADDOO..NNeett33..55yySSQQLLSSEERRVVEERR22000088
11.En el cuadro de dialogo Agregar Tabla, agregar todas las tablas que desee mostrar en el
diagrama.
12.Agregartodas las Tablasde la base de datos Poseidn.
13.Establecer el siguiente diagrama.
14.Guardarel diagramacon el nombre de Diagrama Poseidn.
15.Como usted puede observar se ha creado un nuevo diagramaen la base de datosPoseidn.
-
7/22/2019 Aplicaciones Distribuidas 01
38/119
-
7/22/2019 Aplicaciones Distribuidas 01
39/119
IInnssttrruuccttoorr::CCuueevvaaVVaallvveerrddeeDDiieeggooAAllbbeerrttoo ddiieeggooaallbbeerrttoo__11998877@@hhoottmmaaiill..ccoomm
CCaappttuullooII
TTrraabbaajjaannddooyyCCoonnoocciieennddooSSQQLLSS
eerrvveerr22000088
39
DDeessaarrrroollllooDDeeAApplliiccaacciioonneess DDiissttrriibbuuiiddaasseennccoonnAADDOO..NNeett33..55yySSQQLLSSEERRVVEERR22000088
3. Seleccionar el Scripty ejecutar la consulta (pulsar la Tecla F5).
EEjjeerrcciicciiooNN##22
1. Se desea visualizar todas las Fechas delCampo FechaPedidode la Tabla Pedidos.
2. Digitar el siguiente Script.
3. Seleccionar el Scripty ejecutar la consulta (pulsar la Tecla F5).
EEjjeerrcciicciiooNN##33
1. Se desea visualizar los siguientes campos IdCliente, NombreCompaa de la Tabla Clientes.
2. Se desea cambiar el nombre de la Columna IdCliente alNombredeCdigo, NombreCompaa al
nombre Empresa.
3. Digitar el siguiente Script.
-
7/22/2019 Aplicaciones Distribuidas 01
40/119
IInnssttrruuccttoorr::CCuueevvaaVVaallvveerrddeeDDiieeggooAAllbbeerrttoo ddiieeggooaallbbeerrttoo__11998877@@hhoottmmaaiill..ccoomm
CCaappttuullooII
TTrraabbaajjaannddooyyCCoonnoocciieennddooSSQQLLSS
eerrvveerr22000088
40
DDeessaarrrroollllooDDeeAApplliiccaacciioonneess DDiissttrriibbuuiiddaasseennccoonnAADDOO..NNeett33..55yySSQQLLSSEERRVVEERR22000088
4. Seleccionar el Scripty ejecutar la consulta (pulsar la Tecla F5).
DDeeffiinniicciinnddeeCCoolluummnnaassCCoommppuuttaaddaass
Una columnacomputadaes una columnaque se muestra en el resultado de una consulta, pero que no
existe fsicamente como tal en la tabla. La columna computada muestra el resultado de ejecutar alguna
operacin con las columnas de la tabla.
EEjjeerrcciicciiooNN##44
1. Se desea obtener el 10 %de descuento de cada producto.
2. Digitar el siguiente Script.
3. Seleccionar el Scripty ejecutar la consulta (pulsar la Tecla F5).
-
7/22/2019 Aplicaciones Distribuidas 01
41/119
IInnssttrruuccttoorr::CCuueevvaaVVaallvveerrddeeDDiieeggooAAllbbeerrttoo ddiieeggooaallbbeerrttoo__11998877@@hhoottmmaaiill..ccoomm
CCaappttuullooII
TTrraabbaajjaannddooyyCCoonnoocciieennddooSSQQLLSS
eerrvveerr22000088
41
DDeessaarrrroollllooDDeeAApplliiccaacciioonneess DDiissttrriibbuuiiddaasseennccoonnAADDOO..NNeett33..55yySSQQLLSSEERRVVEERR22000088
CCoonnccaatteennaannddooCCaaddeennaass
EEjjeerrcciicciiooNN##55
1. Se desea Mostar en una Consulta de los Campos Apellidosy Nombresen una sola columna, estos
camposson de la Tabla Empleados.
2. Digitar el siguiente Script.
3. Seleccionar el Scripty ejecutar la consulta (pulsar la Tecla F5).
QQuussmmbboolloosseeuuttiilliizzooppaarraaccoonnccaatteennaarrlloossccaammppoossddeeuunnaaTTaabbllaa??
DDeeffiinniicciinnddeeffiillttrroossddeeffiillaaeennSSeelleecctt
En la clausula where, condicin_filases una expresin lgica que establece la condicin que debe cumplir
las filas a mostrar en el resultado de la consulta. Para construir la expresin lgicautilice operadores
relacionales O de comparacin y operadores lgicos SQLcomo Like, BetweeneIn.
OOppeerraaddoorreesseennTTrraannssaaccttSSQQLL
La siguiente tabla ilustra los operadores de Transact SQL.
Tipo de operador Operadores
Operador de asignacin =
Operadores aritmticos + (suma)
- (resta)* (multiplicacin)/ (divisin)
-
7/22/2019 Aplicaciones Distribuidas 01
42/119
IInnssttrruuccttoorr::CCuueevvaaVVaallvveerrddeeDDiieeggooAAllbbeerrttoo ddiieeggooaallbbeerrttoo__11998877@@hhoottmmaaiill..ccoomm
CCaappttuullooII
TTrraabbaajjaannddooyyCCoonnoocciieennddooSSQQLLSS
eerrvveerr22000088
42
DDeessaarrrroollllooDDeeAApplliiccaacciioonneess DDiissttrriibbuuiiddaasseennccoonnAADDOO..NNeett33..55yySSQQLLSSEERRVVEERR22000088
** (exponente)% (modulo)
Operadores relacionales ode comparacin
= (igual a) (distinto de)!= (distinto de)< (menor que)
> (mayor que)>= (mayor o igual a) (no mayor a)!< (no menor a)
Operadores lgicos AND (y lgico)NOT (negacin)OR (o lgico)& (AND a nivel de bit)| (OR a nivel de bit)^ (OR exclusivo a nivel de bit)
Operador deconcatenacin +
Otros ALL (Devuelve TRUE si el conjunto completo de comparaciones es TRUE)ANY(Devuelve TRUE si cualquier elemento del conjunto decomparaciones es TRUE)BETWEEN (Devuelve TRUE si el operando est dentro del intervalo)EXISTS (TRUE si una sub consulta contiene filas)IN (TRUE si el operando est en la lista)LIKE (TRUE si el operando coincide con un patrn)NOT (Invierte el valor de cualquier operador booleano)SOME(Devuelve TRUE si alguna de las comparaciones de un conjunto es
TRUE)
EEjjeerrcciicciioossddeeCCoonnssuullttaassuuttiilliizzaannddooFFiillttrrooss
EEjjeerrcciicciiooNN##66
1. Se desea Mostar todos los productos de la Categora2.
2. Digitar el siguiente Script.
3. Seleccionar el Scripty ejecutar la consulta (pulsar la Tecla F5).
-
7/22/2019 Aplicaciones Distribuidas 01
43/119
IInnssttrruuccttoorr::CCuueevvaaVVaallvveerrddeeDDiieeggooAAllbbeerrttoo ddiieeggooaallbbeerrttoo__11998877@@hhoottmmaaiill..ccoomm
CCaappttuullooII
TTrraabbaajjaannddooyyCCoonnoocciieennddooSSQQLLSS
eerrvveerr22000088
43
DDeessaarrrroollllooDDeeAApplliiccaacciioonneess DDiissttrriibbuuiiddaasseennccoonnAADDOO..NNeett33..55yySSQQLLSSEERRVVEERR22000088
EEjjeerrcciicciiooNN##77
1. Se desea Mostar todos los productos de la Categora2 y que el Precio Unitariosea mayor igual a
20.
2. Digitar el siguiente Script.
4. Seleccionar el Scripty ejecutar la consulta (pulsar la Tecla F5).
EEjjeerrcciicciiooNN##88
1. Se desea Mostar todos los productos, menos de la categora2 y que sean mayorese igualesa 30.
2. Digitar el siguiente Script.
3. Seleccionar el Scripty ejecutar la consulta (pulsar la Tecla F5).
EEjjeerrcciicciiooNN##99
1. Se desea Mostar todos los productos, de la Categora5 y 7 de la tabla productos.
2. Digitar el siguiente Script.
-
7/22/2019 Aplicaciones Distribuidas 01
44/119
IInnssttrruuccttoorr::CCuueevvaaVVaallvveerrddeeDDiieeggooAAllbbeerrttoo ddiieeggooaallbbeerrttoo__11998877@@hhoottmmaaiill..ccoomm
CCaappttuullooII
TTrraabbaajjaannddooyyCCoonnoocciieennddooSSQQLLSS
eerrvveerr22000088
44
DDeessaarrrroollllooDDeeAApplliiccaacciioonneess DDiissttrriibbuuiiddaasseennccoonnAADDOO..NNeett33..55yySSQQLLSSEERRVVEERR22000088
3. Seleccionar el Scripty ejecutar la consulta (pulsar la Tecla F5).
MMaanniippuullaacciinnddeeDDaattoossddeettiippooFFeecchhaa--HHoorraa
EEjjeerrcciicciiooNN##1100
1. Ejecute la siguiente sentencia.
2. La lista muestra varios pedidos realizados el 8 de Agosto de 1994.
3. Se desea mostrar los pedidos con la fecha 1992/08/08.
4. Como usted puede observar no se muestra nada en la lista.
-
7/22/2019 Aplicaciones Distribuidas 01
45/119
IInnssttrruuccttoorr::CCuueevvaaVVaallvveerrddeeDDiieeggooAAllbbeerrttoo ddiieeggooaallbbeerrttoo__11998877@@hhoottmmaaiill..ccoomm
CCaappttuullooII
TTrraabbaajjaannddooyyCCoonnoocciieennddooSSQQLLSS
eerrvveerr22000088
45
DDeessaarrrroollllooDDeeAApplliiccaacciioonneess DDiissttrriibbuuiiddaasseennccoonnAADDOO..NNeett33..55yySSQQLLSSEERRVVEERR22000088
Cul cree usted que sea el problema?
El problema no es el formato de fecha ya que previamente se le informo al servidor que la cadena de fecha
se le esta enviando en formatodmy.
La columna FechaPedidoes de tipo fecha-hora; por lo tanto almacena la fechaadems la hora, es decir,
que representa un instanteen el tiempo.
La instruccin Select que se ha enviado no especifica la hora, por lo que el motor de bsqueda asume que
estamos buscando la fecha 08/08/1994 00:00:00:00.
5. Ahora ejecute la siguiente sentencia.
6. El listado resultante muestra los pedidos cuya fecha es anterior al 08 de Agosto de 1994.
UUssooddeellaaffuunncciinnCCOONNVVEERRTT(())ccoonnddaattoossddeettiippooFFeecchhaa--HHoorraa
SSiinnttaaxxiissConvert (Char(n),expresin_Fecha,estilo)
Convierte expresin_fechaa una cadena de formato de fecha. La cadena tiene longitud ny el formato deldato se establece con el valor de estilo.
Char(n),es el tipo y la longitud de la cadena con formato de fecha resultante.
expresin_fecha, representa la fecha cuyo formato de representacin se desea cambiar.
Estilo, indica el formato de presentacin de la cadena resultante.
El siguiente cuadro muestra algunos valores de estilo para la funcin CONVERT.
Ao con 2 dgitos Ao con 4 Dgitos Formato Salida
1 101 USA Mm/dd/aa
2 102 ANSI aa.mm.dd
3 103 Britnico / Francs Dd/mm/aa
4 104 Alemn dd.mm.aa
5 105 Italiano dd-mm-aa
6 106 Dd mes dd
7 107 Mes dd, aa
-
7/22/2019 Aplicaciones Distribuidas 01
46/119
IInnssttrruuccttoorr::CCuueevvaaVVaallvveerrddeeDDiieeggooAAllbbeerrttoo ddiieeggooaallbbeerrttoo__11998877@@hhoottmmaaiill..ccoomm
CCaappttuullooII
TTrraabbaajjaannddooyyCCoonnoocciieennddooSSQQLLSS
eerrvveerr22000088
46
DDeessaarrrroollllooDDeeAApplliiccaacciioonneess DDiissttrriibbuuiiddaasseennccoonnAADDOO..NNeett33..55yySSQQLLSSEERRVVEERR22000088
BBssqquueeddaabbaassaaddaaeennFFeecchhaa
Se desea obtener el listado de los pedidos cuya fecha de pedido es anterior O igual al 8 de Agosto de 1994
EEjjeerrcciicciiooNN##1111
1. Escribir el siguiente Script.
2. Seleccionar el Scripty ejecutar la consulta (pulsar la Tecla F5).
BBssqquueeddaabbaassaaddaaeennccaaddeennaaddeeccaarraacctteerreess
OOppeerraaddoorrLLiikkee
SSiinnttaaxxiiss
SSeelleecctt**IIlliissttaa__CCoolluummnnaassffrroommnnoommbbrree__ttaabbllaa
WWhheerreeccoolluummnnaaLLIIKKEEeexxpprreessiinn__ccaaddeennaa__aa__bbuussccaarr
CCoolluummnnaa,,es la columna en la que se busca la cadena de caracteres.
EExxpprreessiioonn__CCaaddeennaa__aa__bbuussccaarr,,indica como debe ser la cadena que se esta buscando en columna. Laexpresin admite comodines.
LLoossCCoommooddiinneessddeellOOppeerraaddoorrLLiikkee
El siguiente cuadro muestra los comodines que puede utilizar con el Operador Like
Comodn Descripcin
%% Indica que en la posicin del comodnpuede ir cualquier cadena de caracteres, incluso unacadena nula
-- Indica que en la posicin del comodn puede ir cualquier carcter no nulo.
[[aabbcc]] Establece el conjunto de caracteres validos en la posicin no nulo.[[aa--bb]] Establece el rango de caracteres validos en la posicin del comodn.
^ Excluir, indica que carcter o conjunto de caracteres no irn en la lista de resultado.
-
7/22/2019 Aplicaciones Distribuidas 01
47/119
IInnssttrruuccttoorr::CCuueevvaaVVaallvveerrddeeDDiieeggooAAllbbeerrttoo ddiieeggooaallbbeerrttoo__11998877@@hhoottmmaaiill..ccoomm
CCaappttuullooII
TTrraabbaajjaannddooyyCCoonnoocciieennddooSSQQLLSS
eerrvveerr22000088
47
DDeessaarrrroollllooDDeeAApplliiccaacciioonneess DDiissttrriibbuuiiddaasseennccoonnAADDOO..NNeett33..55yySSQQLLSSEERRVVEERR22000088
EEjjeerrcciicciiooNN##1122
Lista de productos cuyo nombre contenga la palabra vino
Select* fromproductos wherenombreproducto like'%vino%'
Luego procedemos a ejecutar la aplicacin.
El smbolo %representa a cualquier cadena de caracteres, inclusive la cadena nula.
EEjjeerrcciicciiooNN##1133
Lista de productos cuya primera letea empieza con la letra a.
Select* fromproductos wherenombreproducto like'[a] %'
EEjjeerrcciicciiooNN##1144
Lista de productos cuya primera letea empieza con la letra a y la tercera con la letra e.
Select* fromproductos wherenombreproducto like'[a]%[e]'
EEjjeerrcciicciiooNN##1155
Lista de productos cuyo nombre empieza con cualquier carcter que va en el rango de la M a la T.
Select* fromproductos wherenombreproducto like'[m-t]%'
-
7/22/2019 Aplicaciones Distribuidas 01
48/119
IInnssttrruuccttoorr::CCuueevvaaVVaallvveerrddeeDDiieeggooAAllbbeerrttoo ddiieeggooaallbbeerrttoo__11998877@@hhoottmmaaiill..ccoomm
CCaappttuullooII
TTrraabbaajjaannddooyyCCoonnoocciieennddooSSQQLLSS
eerrvveerr22000088
48
DDeessaarrrroollllooDDeeAApplliiccaacciioonneess DDiissttrriibbuuiiddaasseennccoonnAADDOO..NNeett33..55yySSQQLLSSEERRVVEERR22000088
EEjjeerrcciicciiooNN##1166
Lista de productos cuyo nombre empieza con A con cualquier carcter en el rango que va de U ala Adems, el segundo carcter no debe ser la letra r.
Select* fromproductos wherenombreproducto like'[^b-t][^r]%'
El Carcter ^ significa Excluir. El Carcter % representa cualquier cadenade caracteres, inclusive la cadena nula El Carcter _ Representa cualquier carcterimprimibleno puede ser nulo.
EEjjeerrcciicciiooNN##1177
Lista de productos cuyo nombre empieza con la palabra Queso.
Select* fromproductos wherenombreproducto like'queso%'
EEjjeerrcciicciiooNN##1188
Lista productos cuyo segundo carcter empiece con la letra e.
Select* fromproductos wherenombreproducto like '_e%'
-
7/22/2019 Aplicaciones Distribuidas 01
49/119
IInnssttrruuccttoorr::CCuueevvaaVVaallvveerrddeeDDiieeggooAAllbbeerrttoo ddiieeggooaallbbeerrttoo__11998877@@hhoottmmaaiill..ccoomm
CCaappttuullooII
TTrraabbaajjaannddooyyCCoonnoocciieennddooSSQQLLSS
eerrvveerr22000088
49
DDeessaarrrroollllooDDeeAApplliiccaacciioonneess DDiissttrriibbuuiiddaasseennccoonnAADDOO..NNeett33..55yySSQQLLSSEERRVVEERR22000088
EEjjeerrcciicciiooNN##1199
Lista de productos cuyo nombre empiece con C, M R.
Select* fromproductos wherenombreproducto like[cmr] %'
EEjjeerrcciicciiooNN##2200
Lista de productos cuyo nombre empiece con C, M R. El segundo Carcter debe ser A.
Select* fromproductos wherenombreproducto like[cmr] a%'
El comodn [cmr], representa el conjunto de caracteres validos en la posicin en la que aparecer elcomodn.
EEjjeerrcciicciiooNN##2211
Seleccionar todos los productos que termine con la letra Z
Select* fromproductos wherenombreproducto like'%z'
-
7/22/2019 Aplicaciones Distribuidas 01
50/119
IInnssttrruuccttoorr::CCuueevvaaVVaallvveerrddeeDDiieeggooAAllbbeerrttoo ddiieeggooaallbbeerrttoo__11998877@@hhoottmmaaiill..ccoomm
CCaappttuullooII
TTrraabbaajjaannddooyyCCoonnoocciieennddooSSQQLLSS
eerrvveerr22000088
50
DDeessaarrrroollllooDDeeAApplliiccaacciioonneess DDiissttrriibbuuiiddaasseennccoonnAADDOO..NNeett33..55yySSQQLLSSEERRVVEERR22000088
EEjjeerrcciicciiooNN##2222
Mostrar todos los productos cuya cuarta letra sea A
Select* fromproductos wherenombreproducto like'___a%'
OOppeerraaddoorrBBeettwweeeenn
Permite seleccionar en base a un rango de valores numricos.
SSiinnttaaxxiiss
SSeelleecctt**IIlliissttaa__CCoolluummnnaassffrroommnnoommbbrree__ttaabbllaa
WWhheerreeccoolluummnnaaBBeettwweeeenn VVaalloorr__iinniicciiaallAANNDDVVaalloorr__FFiinnaall
Betweenindica que el valor de la columna debe encontrarse en el rango definido por Valor_inicialyValor_Final..
Columna, es la columnaen la que se busca segn el rango especificado por Valor_inicialy Valor_Final.
Valor_inicial,Valor_Final, Establecen los limites del rango de valores en la que se basa la bsqueda.
EEjjeerrcciicciiooNN##2233
Lista de productos cuyo precio se encuentra en el rango que va de 15 a 21 nuevos soles.
Select* fromproductos wherepreciounidad between15 and 21
-
7/22/2019 Aplicaciones Distribuidas 01
51/119
IInnssttrruuccttoorr::CCuueevvaaVVaallvveerrddeeDDiieeggooAAllbbeerrttoo ddiieeggooaallbbeerrttoo__11998877@@hhoottmmaaiill..ccoomm
CCaappttuullooII
TTrraabbaajjaannddooyyCCoonnoocciieennddooSSQQLLSS
eerrvveerr22000088
51
DDeessaarrrroollllooDDeeAApplliiccaacciioonneess DDiissttrriibbuuiiddaasseennccoonnAADDOO..NNeett33..55yySSQQLLSSEERRVVEERR22000088
EEjjeerrcciicciiooNN##2244
Lista de productos cuyo nombre se encuentren en el rango de Cerveza y galletas
Select* fromproductos wherenombreproducto between'cerveza' and 'galletas'
EEjjeerrcciicciiooNN##2255
Se desea visualizar un listado de todos los pedidos realizados en el ao de 1996.
select*frompedidos whereFechaPedido notbetween'01/01/1994'and'31/12/1995'
OOppeerraaddoorrIINN
Permite seleccionar en base a un conjunto de valores
EEjjeerrcciicciiooNN##2266
Lista de proveedoresubicados en las ciudadesde Londres, Paris, Tokyo.
Select* fromproveedores whereciudad in('londres','Pars','Tokyo')
-
7/22/2019 Aplicaciones Distribuidas 01
52/119
IInnssttrruuccttoorr::CCuueevvaaVVaallvveerrddeeDDiieeggooAAllbbeerrttoo ddiieeggooaallbbeerrttoo__11998877@@hhoottmmaaiill..ccoomm
CCaappttuullooII
TTrraabbaajjaannddooyyCCoonnoocciieennddooSSQQLLSS
eerrvveerr22000088
52
DDeessaarrrroollllooDDeeAApplliiccaacciioonneess DDiissttrriibbuuiiddaasseennccoonnAADDOO..NNeett33..55yySSQQLLSSEERRVVEERR22000088
MMaanniippuullaacciinnddeevvaalloorreessNNuullll
Un valor Null indica que el valor es desconocido, no aplicable o que simplemente se registraposteriormente. Un valor Nulles distinto a un a cadena vaca o al valor cero(0) y tambin es distinto acualquier otro valor.
La comparacin operacin entre valores Null o entre un valor Nully cualquier otro valor retorna un valordesconocido (otro valor Null), ya que cada valor Nulles desconocido.
EEjjeerrcciicciiooNN##2277
Lista de Clientes quenotenganFax.
select*fromclientes wherefax isnull
EEjjeerrcciicciiooNN##2288
Lista de Clientes quetenganFax.
select*fromclientes wherefax isnotnull
-
7/22/2019 Aplicaciones Distribuidas 01
53/119
IInnssttrruuccttoorr::CCuueevvaaVVaallvveerrddeeDDiieeggooAAllbbeerrttoo ddiieeggooaallbbeerrttoo__11998877@@hhoottmmaaiill..ccoomm
CCaappttuullooII
TTrraabbaajjaannddooyyCCoonnoocciieennddooSSQQLLSS
eerrvveerr22000088
53
DDeessaarrrroollllooDDeeAApplliiccaacciioonneess DDiissttrriibbuuiiddaasseennccoonnAADDOO..NNeett33..55yySSQQLLSSEERRVVEERR22000088
FFuunncciioonneessddeeFFeecchhaayyHHoorraa
La siguiente tabla muestra las funciones de fecha y hora disponibles en SQL server.
FFuunncciinn RReessuullttaaddoo
GETDATE() Retorna la fecha y hora del sistema
DATEADD(partefecha,n,fecha) Retorna una nueva fecha aadiendo n unidades de
partefechaa fecha
DATEDIFF(parteFecha,fecha1,fecha2) Retorna la diferencia en parteFechaentre fecha1 y fecha2.
DATENAME(partefecha,fecha) Retorna la cadena correspondiente a partefechaen fecha
DATEPART(partefecha,fecha) Retorna el nmero correspondiente a partefechay fecha
DAY(fecha) Retorna el nmero correspondiente a la parte del da de
fecha
MONTH(fecha) Retorna el nmero correspondiente a la parte del mes de
fecha
YEAR(fecha) Retorna el nmero correspondiente a la parte del ao de
fecha
GETUTCDATE() Retorna la fecha y hora del meridiano de Greenwich
La siguiente tabla muestra los valores de parte fecha que podemos utilizar.
PPaarrtteeffeecchhaa AAbbrreevviiaattuurraa
Year Yy, yyyy
Quarter Qq ,q
Month Mm, m
Dayofyear Dy, y
Day Dd, d
Week Wk, ww
weekday Dw
Hour Hh
minute Mi, n
second Ss, s
milisecond Ms
-
7/22/2019 Aplicaciones Distribuidas 01
54/119
IInnssttrruuccttoorr::CCuueevvaaVVaallvveerrddeeDDiieeggooAAllbbeerrttoo ddiieeggooaallbbeerrttoo__11998877@@hhoottmmaaiill..ccoomm
CCaappttuullooII
TTrraabbaajjaannddooyyCCoonnoocciieennddooSSQQLLSS
eerrvveerr22000088
54
DDeessaarrrroollllooDDeeAApplliiccaacciioonneess DDiissttrriibbuuiiddaasseennccoonnAADDOO..NNeett33..55yySSQQLLSSEERRVVEERR22000088
DDaatteeNNaammee
Devuelve una cadena de caracteres que representa la parte de la fecha especificada de la fechaespecificada
Los clculos para las horas no son exactos cuando se trata de SmallDateTime, por lo que devuelve0.
EEjjeerrcciicciiooNN##2299
SelectIdPedido, DateName(Month, FechaPedido) as 'Nombre del mes'fromPedidos whereIdPedido =10352diciembre
EEjjeerrcciicciiooNN##3300
SelectIdPedido, DateName(week, FechaPedido) as 'Numero de Semana'fromPedidos whereIdPedido =
1035251
EEjjeerrcciicciiooNN##3311
SelectIdPedido, datename(weekday, FechaPedido) as 'Da De Semana'fromPedidos whereIdPedido =
10352Martes
HHoorraass::
EEjjeerrcciicciiooNN##3322
S