You are on page 1of 16

Administradores de Bases de Datos

Studio .NET 2005 Y SQL Server 2005

Curso de SQL Server 2005 Developer e Introducción a VB.net No.1 Práctica No.1. Escribiendo y ejecutando código transact sql desde el Query Analyzer ELLABORADO POR:: E ABORADO POR B R D R FECHA DE ELABORACIIÓN : FECHA DE ELABORAC ÓN AD BORAC ÓN Ing. Giovanni Sáenz. 24 de Junio del 2008 (Fecha Original).

COLLABORACIIIÓN Y VERSIIIÓN ORIIIGIIINALL EN 2000:: Ing. Marvin Lira Chamorro y Ing. Glenda COLA BO RAC ÓN Y VER S ÓN OR G NAL EN 2000 A O A N N Barrios OBJETTIIIVO DE LA PRÁCTIICA:: OBJET VO D E LA PRÁCT CA JE O D Con esta guía se pretende que identifiquen las diferencias de colores utilizados por el Query Analyzer para el código Transact SQL.

Tabla de Contenido:
Tabla de Contenido: ___________________________________________________________ 1 Crear Procedimientos Almacenados:______________________________________________ 2
Definición del Procedimiento Almacenado (con Parámetro) ______________________________ 2 Llamado para Ejecutar el Procedimiento Almacenado___________________________________ 3 Resultado del Procedimiento Almacenado _____________________________________________ 3

Funciones ___________________________________________________________________ 4
Funciones de tipo Escalar ___________________________________________________________ 4 Definición de la Función ____________________________________________________________ 4 Ejecución de la Función ____________________________________________________________ 5 La Primera Forma para Correr la Funcion es: _________________________________________ 6 La segunda forma, es utilizando variables y pasando el valor a esta misma: _________________ 6

Trabajando con DDL y DML. ___________________________________________________ 7 Práctica No.2. ________________________________________________________________ 7 Tareas a Realizar:____________________________________________________________ 16 Bibliografía: ________________________________________________________________ 16

Departamento de Arquitectura y Sistemas de Aplicaciones

1

es la base de datos Northwin. en este caso.Administradores de Bases de Datos Studio . es buscar donde esta la programación de la base de datos. agregara el siguiente código: Departamento de Arquitectura y Sistemas de Aplicaciones 2 . luego. hacer click derecho sobre procedimientos almacenados y crear uno nuevo: Ver página siguiente: Sobre la ventana que aparece.NET 2005 Y SQL Server 2005 Crear Procedimientos Almacenados: Definición del Procedimiento Almacenado (con Parámetro) El primer paso.

Administradores de Bases de Datos Studio .spGetNombre_Parametro 'Giovanni Saenz' Resultado del Procedimiento Almacenado Departamento de Arquitectura y Sistemas de Aplicaciones 3 .[spGetNombre_Parametro] (@pNombre as Varchar(120)) AS Begin print @pNombre End Llamado para Ejecutar el Procedimiento Almacenado El código es el siguiente: exec dbo. es el siguiente: CREATE PROCEDURE [dbo].NET 2005 Y SQL Server 2005 El código.

@pfechanacimiento. @pFechaNacimiento @PFechaActual Datetime) RETURNS Varchar(240) AS BEGIN Declare @NombreEdad varchar(240) Set @NombreEdad = @pnombreCompleto + ' tiene la edad de ' + Cast(DATEDIFF(YEAR. @pfechaactual) as Varchar) + ' anios ' return (@NombreEdad) END Departamento de Arquitectura y Sistemas de Aplicaciones 4 .Administradores de Bases de Datos Studio . ahí usted agregara el código correspondiente a la función: Definición de la Función CREATE FUNCTION dbo.NET 2005 Y SQL Server 2005 Funciones Funciones de tipo Escalar Ir a la parte superior de la venta y buscar “nueva consulta”.fncCalculaEdad_Parametro (@pNombreCompleto Varchar(120). Datetime.

fncCalculaEdad_Parametro('Glenda '24/06/1973'.[FncGetCategoriasLineal2] ( @categoria nvarchar(15) ) RETURNS TABLE Return (select CategoryId. set ANSI_NULLS ON set QUOTED_IDENTIFIER ON go ---------------------------------ALTER FUNCTION [dbo].Administradores de Bases de Datos Studio .NET 2005 Y SQL Server 2005 Al ejecutarse la Instrucción. se agrega como parte de las funciones: Ejecución de la Función La Ejecución de la función. CategoryName From Categories where CategoryName = @categoria) Departamento de Arquitectura y Sistemas de Aplicaciones 5 . getDATE()) Barrios Aguirre'. se realiza con la siguiente consulta: Select dbo.

el resultado es el mismo: Departamento de Arquitectura y Sistemas de Aplicaciones 6 .[dbo]. es utilizando variables y pasando el valor a esta misma: Declare @categoria as Varchar(15) Set @categoria = 'Confections' SELECT * FROM [Northwin].NET 2005 Y SQL Server 2005 La Primera Forma para Correr la Funcion es: SELECT * FROM [Northwin].[FncGetCategoriasLineal2] (@Categoria) Para ambos casos.[dbo].[FncGetCategoriasLineal2] ('Confections') La segunda forma.Administradores de Bases de Datos Studio .

actualización de tablas.NET 2005 Y SQL Server 2005 Trabajando con DDL y DML. tenga seleccionado la base de datos Northwind.sysobjects Where id = object_id ('[dbo]. Lenguaje de Control de datos (DCL).1: Crear una tabla llamada ScpDigitacionProyecto. antes debe verificarse que exista la tabla ScpDigitacionProyecto. Utilizando la sintaxis de DDL y DML para llevar a cabo acciones de creado de TABLAS. Paso No.Administradores de Bases de Datos Studio . OBJETTIIVO DE LA PRÁCTIICA:: OBJE VO DE LA PRÁCT CA Con esta guía se pretende dar a conocer la sintaxis del Lenguaje de definición de Datos (DDL).[ScpDigitacionProyecto] GO Práctica No. y Lenguaje de Modelación de Datos (DML) Pasos a seguir: En el SQL Query Analyzer.2. modificación y eliminación de registros. 'IsUserTable') = 1) Drop table [dbo].[ScpDigitacionProyecto]') and OBJECTPROPERTY (id. inserción. Departamento de Arquitectura y Sistemas de Aplicaciones 7 . if exists (Select * From dbo.

CREATE TABLE [dbo]. AnioAsistencia int NULL . MesPrueba Int GO Para verificar los valores de la Tabla.4: Modificar la tabla ScpDigitacionProyecto. MesAsistencia smallint NULL . al agregar las columnas Fecha de tipo Datetime y MesPrueba de tipo int. ALTER TABLE [dbo].Administradores de Bases de Datos Studio .3 : Visualizar en modo texto la estructura de la tabla Notas SELECT * From ScpDigitacionProyecto Paso No. Asistencia char (2) COLLATE SQL_Latin1_General_CP1_CI_AS NULL . vuelva a ejecutar: SELECT * From ScpDigitacionProyecto Departamento de Arquitectura y Sistemas de Aplicaciones 8 .NET 2005 Y SQL Server 2005 Paso No.[ScpDigitacionProyecto] ( ScpDigitacionProyecto_ID int IDENTITY (1. 1) PRIMARY KEY CLUSTERED NOT NULL . int NOT NULL objProyectoID ) ON [PRIMARY] GO Paso No.[ScpDigitacionProyecto] ADD Fecha Datetime NULL.2: Crear la tabla ScpDigitacionProyecto con la siguiente estructura.

INSERT INTO ScpDigitacionProyecto (MesAsistencia. AnioAsistencia. AnioAsistencia . 'B1'. vuelva a ejecutar: SELECT * From ScpDigitacionProyecto Paso No. AnioAsistencia . Asistencia . 65) INSERT INTO ScpDigitacionProyecto (MesAsistencia. 'B1'.5: Eliminar de la tabla ScpDigitacionProyecto eliminar la columna MesPrueba. objProyectoID) VALUES (2.6: Insertando registros en Digitacion Proyecto. Asistencia .Administradores de Bases de Datos Studio . 'B1'. 2005. 2005. 65) INSERT INTO ScpDigitacionProyecto (MesAsistencia. AnioAsistencia . objProyectoID) VALUES (1. 65) INSERT INTO ScpDigitacionProyecto (MesAsistencia. ALTER TABLE [dbo]. Asistencia. 2005. objProyectoID) VALUES (3. Departamento de Arquitectura y Sistemas de Aplicaciones 9 .NET 2005 Y SQL Server 2005 Paso No.[ScpDigitacionProyecto] DROP Column MesPrueba GO Para verificar los valores de la Tabla.

AnioAsistencia . se genera el siguiente mensaje: Departamento de Arquitectura y Sistemas de Aplicaciones 10 . Asistencia . AnioAsistencia . 'B1'. 65) INSERT INTO ScpDigitacionProyecto (MesAsistencia. 2005. objProyectoID) VALUES (9. 65) Al Ejecutar el código. objProyectoID) VALUES (6. objProyectoID) VALUES (5.Administradores de Bases de Datos Studio . Asistencia . AnioAsistencia . objProyectoID) VALUES (8. 'B1'. 65) INSERT INTO ScpDigitacionProyecto (MesAsistencia. 65) INSERT INTO ScpDigitacionProyecto (MesAsistencia. Asistencia . Asistencia . 'B1'. 'B1'. objProyectoID) VALUES (7. 'B1'. AnioAsistencia .NET 2005 Y SQL Server 2005 Asistencia . AnioAsistencia . Asistencia . 2005. objProyectoID) VALUES (4. 2005. 2005. 'B1'. 2005. 65) INSERT INTO ScpDigitacionProyecto (MesAsistencia. 65) INSERT INTO ScpDigitacionProyecto (MesAsistencia. 2005.

7: Crear una tabla a partir del contenido y la estructura de la tabla ScpDigitacionProyecto Select * Into ScpDigitacionProyectoCopia From ScpDigitacionProyecto Departamento de Arquitectura y Sistemas de Aplicaciones 11 .NET 2005 Y SQL Server 2005 Para verificar los valores de la Tabla. vuelva a ejecutar: SELECT * From ScpDigitacionProyecto Paso No.Administradores de Bases de Datos Studio .

Asistencia .Administradores de Bases de Datos Studio . AnioAsistencia . objProyectoID) (Select MesAsistencia. AnioAsistencia. Asistencia. ObjProyectoID From ScpDigitacionProyectoCopia) Departamento de Arquitectura y Sistemas de Aplicaciones 12 .NET 2005 Y SQL Server 2005 Paso No.8: Insertando los registros de la tabla ScpDigitacionProyectoCopia a ScpDigitacionProyecto INSERT Into ScpDigitacionProyecto (MesAsistencia.

9: Insertando los registros de la tabla ScpDigitacionProyectoCopia a ScpDigitacionProyecto INSERT Into ScpDigitacionProyecto (MesAsistencia. Asistencia. objProyectoID) (Select MesAsistencia. ObjProyectoID From ScpDigitacionProyectoCopia) Para mostrar el contenido de Ambas Tablas: SELECT * From ScpDigitacionProyecto SELECT * From ScpDigitacionProyectoCopia Paso No.10: Actualizar la tabla ScpDigitacionProyecto al agregar un constraint (Representa una restricción que se puede imponer a uno o varios objetos DataColumn) para la columna ScpDigitacionProyectoID Departamento de Arquitectura y Sistemas de Aplicaciones 13 . AnioAsistencia . Asistencia .NET 2005 Y SQL Server 2005 Paso No. AnioAsistencia.Administradores de Bases de Datos Studio .

12: Elminar el Constraint creado para el MesAsistencia. Para esto vaya al Enterprise Manager e Intente ingresar un registro con un valor menor que 1 para el campo MesAsistencia. ALTER TABLE DROP CONSTRAINT ScpDigitacionProyecto Mes_Check Departamento de Arquitectura y Sistemas de Aplicaciones 14 .11: Compruebe que el constraint MesAsistencia funciona.Administradores de Bases de Datos Studio . Paso No.NET 2005 Y SQL Server 2005 ALTER TABLE ADD CONSTRAINT GO EXEC GO ScpDigitacionProyecto WITH NOCHECK Mes_Check CHECK (MesAsistencia >=1) sp_help ScpDigitacionProyecto Paso No.

[ScpDigitacionProyecto] Asistencia Char(10) NOT NULL Paso No. Departamento de Arquitectura y Sistemas de Aplicaciones 15 .Administradores de Bases de Datos Studio . Select * From ScpDigitacionProyecto Paso No.15: Cambiar el valor del anioasistencia 2005 a 2006 para esto hay que buscar todos los registros de digitación proyecto donde AnioAsistencia = 2005. además se puso requerido. EN este caso se cambio el tamaño del campo Asistencia a 10 caracteres. UPDATE Set Where ScpDigitacionProyecto AnioAsistencia = 2006 AnioAsistencia = 2005 Paso No.16: Compruebe que la actualización se llevo a cabo de forma satisfactoria para esto en el enterprise manager o en otra ventana del query analyzer haga un select a la tabla ScpDigitacionProyecto.NET 2005 Y SQL Server 2005 Paso No.14: Visualizar el contenido de la tabla de Digitación Proyecto.13: Alterar una tabla para Modificar el tipo de dato de un campo. ALTER TABLE ALTER COLUMN Muestre la Tabla: Select * From ScpDigitacionProyecto [dbo].

eso depende del grupo).Se deben Cumplir todos los incisos anteriores.Procedimientos Almacenados (para fines prácticos y crear habilidades se definen diez procedimientos con Parámetros y cinco sin parámetros)...NET 2005 Y SQL Server 2005 Tareas a Realizar: Ahora que tiene dos posibles formas de presentar Datos y hacer rastreos o búsquedas. Departamento de Arquitectura y Sistemas de Aplicaciones 16 . c. Mi agradecimiento.Funciones recordar que estas pueden ser escalares o retornen tabla (Al igual que el caso anterior. b. no me he olvidado de cada uno de los títulos. es valido la cantidad. y en la semana se brindara los detalles (son Ocho textos los que se utilizaron para esta información. hacer los ajustes a sus proyectos y presente: a.Deben presentar cada estudiantes ocho Triggers (esto se deben programar en cada tabla.. A todos Gracias. la definición y como se implemente. así mismo la distribución). sin falta el lunes los incluiré a esta lista. tanto a los Señores Representantes en Nicaragua de MC Graw Hill: Engel Hurtado y de la Prentice Hall Francisco Mayorquín. al igual de la cantidad de registros y todo lo que se refiere a la Información que se debe Administrar en las Tablas. d. más los datos de los profesores).Administradores de Bases de Datos Studio . Bibliografía: En este momento queda pendiente.. quienes siempre muy gustosamente me han facilitado toda la información en Libros y textos frescos.