Creacion de Tablas

12
Manual de SQL Server 2000 Tablas Tablas Las Tablas Una tabla es una colección de columnas que contiene todos los datos de una base de datos de una base de datos y definen los atributos de la información que en ella se almacena. Cada fila de la tabla contiene la información sobre un registro. Una tabla es una colección de datos sobre una entidad (persona, lugar, proceso, cosa) especifica que tiene un numero discreto de atributos designados (descripción, dirección, teléfono, nombres, cantidad, stock). SQL Server las denomina tabla de base. Algunos Términos Columnas Los atributos de los datos de una tabla (cantidad, fecha de venta, código de vendedor, cantidad vendida). Filas Cada instancia de los datos en una tabla viene representada por una única entrada. Clave Primaria (Primary Key) Identifica a cada fila y es única. Clave Foránea (Foreign Key) Campo que permite establecer una relación con otra tabla, siendo una clave externa la que une a dos tablas. Los tipos de datos de SQL Server SQL Server 2000. Proporciona un gran número de tipos de datos, como se muestra a continuación en la siguiente tabla. Tipos de datos numéricos exactos Los tipos de datos numéricos exactos le permiten especificar de manera exacta la escala y precisión a utilizar para el dato. Por ejemplo, puede especificar tres dígitos a la derecha del decimal y cuatro a la izquierda. Una consulta siempre devuelve exactamente lo que ingreso. SQL Server soporta dos tipos de datos numéricos exactos compatibles con ANSI: decimal y numeric. En general, se usan los datos numéricos exactos para aplicaciones financieras en las que se desea tener los datos de forma consistente, por ejemplo, siempre dos espacios decimales para evitar errores de redondeo. Tipos de datos numéricos aproximados Los tipos de datos numéricos aproximados almacenan los datos sin precisión. Por ejemplo, el fragmento 1/3 se representa en un sistema decimal como 0.33333… (repitiendo). El número no puede guardarse con precisión, por lo que se almacena una aproximación del valor. Se usan en las aplicaciones científicas en las que la cantidad de decimales de un valor suele ser muy grande. Tipos de datos especiales Bit El tipos de dato bit es un tipo de dato lógico que se usa para almacenar información booleana. Los tipos de datos voléanos se utilizan como marcadores para expresar criterios como encendido/apagado, cierto/falso, y si/no. Los valores se almacenan como 0 o 1. Las columnas de tipo bit pueden tener el valor NULL (desconocido) y no pueden ser indexadas. Ing. Segundo José Castillo Zumarán 1

Transcript of Creacion de Tablas

Page 1: Creacion de Tablas

Manual de SQL Server 2000 Tablas

Tablas

Las Tablas Una tabla es una colección de columnas que contiene todos los datos de una base de datos de una base de datos y definen los atributos de la información que en ella se almacena. Cada fila de la tabla contiene la información sobre un registro. Una tabla es una colección de datos sobre una entidad (persona, lugar, proceso, cosa) especifica que tiene un numero discreto de atributos designados (descripción, dirección, teléfono, nombres, cantidad, stock). SQL Server las denomina tabla de base. Algunos Términos

• Columnas Los atributos de los datos de una tabla (cantidad, fecha de venta, código de vendedor, cantidad vendida).

• Filas Cada instancia de los datos en una tabla viene representada por una única entrada.

• Clave Primaria (Primary Key) Identifica a cada fila y es única.

• Clave Foránea (Foreign Key) Campo que permite establecer una relación con otra tabla, siendo una clave externa la que une a dos tablas.

Los tipos de datos de SQL Server SQL Server 2000. Proporciona un gran número de tipos de datos, como se muestra a continuación en la siguiente tabla. Tipos de datos numéricos exactos Los tipos de datos numéricos exactos le permiten especificar de manera exacta la escala y precisión a utilizar para el dato. Por ejemplo, puede especificar tres dígitos a la derecha del decimal y cuatro a la izquierda. Una consulta siempre devuelve exactamente lo que ingreso. SQL Server soporta dos tipos de datos numéricos exactos compatibles con ANSI: decimal y numeric. En general, se usan los datos numéricos exactos para aplicaciones financieras en las que se desea tener los datos de forma consistente, por ejemplo, siempre dos espacios decimales para evitar errores de redondeo. Tipos de datos numéricos aproximados Los tipos de datos numéricos aproximados almacenan los datos sin precisión. Por ejemplo, el fragmento 1/3 se representa en un sistema decimal como 0.33333… (repitiendo). El número no puede guardarse con precisión, por lo que se almacena una aproximación del valor. Se usan en las aplicaciones científicas en las que la cantidad de decimales de un valor suele ser muy grande. Tipos de datos especiales Bit El tipos de dato bit es un tipo de dato lógico que se usa para almacenar información booleana. Los tipos de datos voléanos se utilizan como marcadores para expresar criterios como encendido/apagado, cierto/falso, y si/no. Los valores se almacenan como 0 o 1. Las columnas de tipo bit pueden tener el valor NULL (desconocido) y no pueden ser indexadas.

Ing. Segundo José Castillo Zumarán 1

Page 2: Creacion de Tablas

Manual de SQL Server 2000 Tablas

Los tipos de datos bit requieren de un solo byte de espacio de almacenamiento. Text o image Los tipos de datos text e image se usan cuando los requerimientos de almacenamiento exceden al límite de columna de 8,000 caracteres. A menudo, a estos tipos de datos se les hace referencia como BLOBs. Los tipos de datos e image pueden almacenar hasta 2 GB de datos binarios o de texto. Tipos de datos de fecha y hora La fecha y hora pueden almacenarse en un tipo de dato definido o bien en uno smalldatetime. La fecha y hora siempre se almacenan juntas en un solo valor. Los datos de fecha y hora pueden tomar varios formatos diferentes.puede especificar el mes utilizando el nombre completo o una abreviatura. Se ignora el uso de mayúsculas/minúsculas y las comas son opcionales. Los siguientes son algunos de los ejemplos de los formatos alfabéticos para el 15 de abril de 1999.

“Abr 15 1999” “Abr 15 99” “Abr 99 15” “15 Abr 99” “1999 Abril 15” “1999 15 Abril”

También puede especificar el valor ordinal del mes. El valor ordinal de un elemento es el valor posicional dentro de una lista de elementos. En los ejemplos anteriores abril es el cuarto mes del año, así que puede usar el número 4 para su designación. Los siguientes son algunos ejemplos que usan el valor ordinal para el 15 de abril de 1999.

4/15/99 (mm/dd/aa) 4/99/15 (mm/aa/dd) 15/99/04 (dd/aa/mm) 99/15/04 (aa/mm/dd)

Los datos almacenados en el tipo de dato DateTime se almacena hasta el milisegundo. Se utiliza un total de 8 bytes, entre un intervalo de fechas de 01/01/1753 hasta el 31/12/9999. El tipo de datos SmallDateTime utiliza un total de 4 bytes. Las fechas almacenadas en este formato son precisas hasta el minuto. Esta se encuentra entre un intervalo de fecha de 01/01/1900 hasta 06/06/2079 Tipo de dato moneda Hay dos tipos de datos moneda: money y smallmoney. Ambas tiene una escala de cuatro, lo que significa que almacenan cuatro dígitos a la derecha del punto decimal. Estos tipos de datos pueden almacenar para uso internacional unidades distintas a dólares, pero no hay disponibles en SQL Server funciones de conversión de moneda. Al ingresar datos monetarios, debe antecederlos con un signo dólar. Tipo de datos timestamp Cada vez que agregue un nuevo registro a una tabla con un campo timestamp, se agregaran valores de hora de forma automática; pero no solo esto, timestamp va un poco mas allá. Si realiza una actualización a una fila, timestamp se actualiza a si mismo en forma automática. El tipo de dato timestamp crea un valor único, generado por SQL Server, que se actualiza automáticamente. Aunque el tipo timestamp luce como un tipo de dato datetime, no lo es. Los tipos de datos timestamp se almacenan como binary(8) para columnas NOT NULL o Varvinary(8) si la columna esta marcada para permitir valores nulos.

Ing. Segundo José Castillo Zumarán 2

Page 3: Creacion de Tablas

Manual de SQL Server 2000 Tablas

Tipo de datos Tipo de datos base Sinónimos Rango/Dominio Espacio de almacenamiento

Bigint Números de -9.223.372.036.854.775.808 a 9.223.372.036.854.775.807

8 bytes

Int integer Números de -2.147.483.648 a 2.147.483.647 4 bytes

Smallint Números enteros de -32.768 a 32.767 2 bytes

Tinyint Números enteros de 0 a 255 1 byte

Entero

Bit 0 ó 1 Los tipos de datos bit comparten un byte con otras columnas de tipo bit de la misma tabla. Por tanto, 8 columnas de tipo bit de la misma tabla utilizan 1 byte de almacenamiento. Si la tabla sólo tiene una columna de tipo bit, seguirá utilizando 1 byte, aunque podrán añadirse 7 columnas más gratis.

Decimal empaquetado (numérico exacto)

decimal(p,s) dec numeric

Números enteros o fraccionarios de -10^38+1a 10^38-1

De 5 a 17 bytes, en función de la precisión especificada, p, que puede tener hasta 38 cifras. De promedio, hace falta 1 byte de almacenamiento para cada 2 cifras de precisión.

float (precisión de hasta 15cifras)

float(n) donde n está entra 1 y 53 e indica el número de bits que se utilizan para almacenar la mantiza del número flota en notación científica Double precisión

Aproximaciones de números de -1.79E+308 a 1.79E+308

Entre 4 y 8 bytes, dependiendo de la precisión Coma flotante (numérico aproximado)

real (precisión de 7 cifras) float(n) donde n está entra 1 y 24

Aproximaciones de números de -3.40E+38 a 3.40E+38

4 bytes

Carácter (longitud fija)

char(n) character(n) character (character sin un tamaño específico es sinónimo de un campo de 1 carácter, char(1))

Hasta 8.000 caracteres, según indique n, del conjunto de caracteres instalado

1 byte por cada carácter n declarado, aunque no se utilice en su totalidad

Carácter (longitud variable)

varchar(n) character varying (n), char varying(n)

Hasta 8.000 caracteres, según indique n, del conjunto de caracteres instalado

1 byte por cada carácter almacenado. Los caracteres declarados, pero no utilizados no consumen espacio de almacenamiento

nchar(n) national character(n) national char(n)

Hasta 4.000 caracteres 2 bytes por cada carácter declarado

Nvarchar(n) national character(n) varying(n) national char varying(n)

Hasta 4.000 caracteres 2 bytes por cada carácter almacenado. Los caracteres declarados, pero no utilizados no consumen espacio de almacenamiento

Cadenas de caracteres Unicote

ntext national text hasta 2^30-1 (1.073.741.823) caracteres Es dos veces el número de caracteres especificado

Money Número con precisión de una diez milésima de unidad (cuatro decimales); se utiliza habitualmente para guardar valores de moneda. De -922.337.203.685.477,5808 a 922.337.203.685.477,5807

8 bytes Moneda

smallmoney Número con precisión de una diez milésima de unidad (cuatro decimales); se utiliza habitualmente para guardar valores de moneda. De -214.748,3648 a 214.748,3648

4 bytes

Ing. Segundo José Castillo Zumarán 3

Page 4: Creacion de Tablas

Manual de SQL Server 2000 Tablas

Datetime Representación de fecha y hora combinadas (SQL Server no tiene tipos de datos DATE y TIME independientes) Parte de fecha: de 01-ENE-1753 a 31-DIC-9999

8 bytes Fecha y hora

smalldatetime Representación de fecha y hora combinadas Parte de fecha: de 01-ENE-1900 a 06-JUN-2079

4 bytes

Binario (longitud fija) binary(n) Datos binarios de longitud fija de n bytes. El argumento n debe ser valor comprendido entre 1 y 8.000

n + 4 bytes aunque no se utilicen totalmente

Binario (longitud variable)

Varbinary(n) binary varying Datos binarios de longitud variable de n bytes. El argumento debe ser un valor comprendido entre 1 y 8.000

El tamaño de almacenamiento es la longitud actual de los datos escritos + 4 bytes

Texto largo/BLOB text e image Text: Datos de tipo carácter hasta 2^31-1 (2.147.438.647) caracteres Image: Datos binarios hasta 2^31-1 (2.147.483.647) caracteres. Los tipos de datos text e image son siempre de longitud variable

Si no es nulo, se utiliza un puntero de 16 bytes en la página de datos mas el número de páginas de 8Kb que sean necesarias para guardar los datos reales. Las páginas de tipo text e image pueden compartirse con otros datos de tipo text e image de la misma tabla

Cursor Una referencia a un cursor que pude utilizarse sólo para variables, para definiciones de tabla

timestamp Un número exclusivo para toda la base de datos 8 bytes

uniqueidentifier Un identificador exclusivo globalmente 16 bytes

sql_variant Almacena valores de varios tipos de datos excepto text, ntext, timestamp y sql_variant

Otros

Table Se utiliza para almacenar un conjunto de resultados para un proceso posterior

Ing. Segundo José Castillo Zumarán 4

Page 5: Creacion de Tablas

Manual de SQL Server 2000 Tablas

Tipos de Datos Definidos por el Usuario Los tipos de datos definidos por el usuario se basan en los tipos de datos proporcionados por el sistema. Un tipo de dato definido por el usuario se define para una base de datos específicos. Sp_addtype nombre_tipo_dato_usuario, tipo_dato_estandar [, NULL |NONULL]

• Nombre_tipo_dato_usuario es el nombre del tipo de dato definido por el usuario.

• Tipo_dato_estandar es un tipo de dato incorporado en SQL Server.

• NULL | NONULL determina si el tipo de dato definido por el usuario permitirá valores nulos. Los tipos de datos definidos por el usuario que se crean en la base de datos model son automáticamente incluidos en todas las bases de datos que se crean desde el momento de su inclusión en la model. La definición del tipo de datos se guarda en la tabla de sistema systype del catalogo de la base de datos. Ejemplo Sp_addtype telefono, 'Varchar(12)', Null Crea un tipo de dato de usuario de nombre telefono en base al tipo estándar VARCHAR, y que permite valores nulos. Eliminación de un tipo de dato definido por el usuario El procedimiento almacenado del sistema sp_droptype elimina los tipos de datos definidos por el usuario de la tabla del sistema systypes. Un tipo de dato definido por el usuario no puede eliminarse si las tabla u otras bases de datos hacen referencia a el. sp_droptype nombre_tipo_dato_usuario Ejemplo

Sp_addtype telefono

Ing. Segundo José Castillo Zumarán 5

Page 6: Creacion de Tablas

Manual de SQL Server 2000 Tablas

Creación de Tablas

Creando Tablas

La sentencia CREATE TABLE sirve para crear la estructura de una tabla no para rellenarla con datos, nos permite definir las columnas que tiene y ciertas restricciones que deben cumplir esas columnas.

La sintaxis es la siguiente:

Nbtabla : Nombre de la tabla que estamos definiendo Nbcol : Nombre de la columna que estamos definiendo Tipo : Tipo de dato de la columna, todos los datos almacenados en la columna deberán ser de ese tipo.

Una restricción consiste en la definición de una característica adicional que tiene una columna o una combinación de columnas, suelen ser características como valores no nulos (campo requerido), definición de índice sin duplicados, definición de clave principal y definición de clave foránea (clave ajena o externa, campo que sirve para relacionar dos tablas entre sí).

restricción1: una restricción de tipo 1 es una restricción que aparece dentro de la definición de la columna después del tipo de dato y afecta a una columna, la que se está definiendo.

La cláusula NOT NULL indica que la columna no podrá contener un valor nulo, es decir que se deberá rellenar obligatoriamente y con un valor válido (equivale a la propiedad requerido Sí de las propiedades del campo).

La cláusula CONSTRAINT sirve para definir una restricción que se podrá eliminar cuando queramos sin tener que borrar la columna. A cada restricción se le asigna un nombre que se utiliza para identificarla y para poder eliminarla cuando se quiera.

restricción2: una restricción de tipo 2 es una restricción que se define después de definir todas las columnas de la tabla y afecta a una columna o a una combinación de columnas.

Ing. Segundo José Castillo Zumarán 6

Page 7: Creacion de Tablas

Manual de SQL Server 2000 Tablas

La sintaxis de una restricción de tipo 2 es muy similar a la CONSTRAINT de una restricción 1 la diferencia es que ahora tenemos que indicar sobre qué columnas queremos definir la restricción. Se utilizan obligatoriamente las restricciones de tipo 2 cuando la restricción afecta a un grupo de columnas o cuando queremos definir más de una CONSTRAINT para una columna (sólo se puede definir una restricción1 en cada columna). En SQL Server 2000, una tabla siempre se crea en una base de datos y es propiedad de un usuario. El propietario es el usuario que ha creado la tabla, pero cualquiera que tenga la función sys_admin o bd_owner puede crear tabla propiedad de otro usuario. Una base de datos puede contener varias tablas con el mismo nombre, siempre que las tablas tengan distintos propietarios. El nombre completo de una tabla tiene 3 partes: BasedeDatos.Propietario.NombredelaTabla Tenga en cuenta las siguientes limitaciones al momento de crear las tablas:

• 1,024 columnas por tabla.

• 8092 bytes por fila (no se aplica a los tipos de datos image y text) Especificación de NULL o NOT NULL Cuando no especifica si una columna es NULL o NOT NULL SQL Server determina esta propiedad de la columna en base al estado de la opción ANSI NULL default de la base de datos. Para evitar conflictos debido al cambio de configuración de la base de datos, especifique para cada columna si será NULL o NOT NULL. Para crear una tabla en SQL Server utilice una de las tres herramientas siguientes

• El administrador Corporativo de SQL Server

• Desde Diagramas de la base de datos

• La Instrucción CREATE DATABASE

Ing. Segundo José Castillo Zumarán 7

Page 8: Creacion de Tablas

Manual de SQL Server 2000 Tablas

Ejemplo: Implementar la siguiente Base de Datos, cuyo nombre será: DbProyecto

Detallamos el Diseño Físico de la Estructura de la Base de Datos

Tabla EtapaProyecto Registra las Etapas de Desarrollo consideradas al desarrollar un proyecto

Restriccion NombreCampo Nulidad TipoDatos Tamaño

Clave Principal Clave Foranea Descripcion

etaCodigo Not Null Char 2 PK etaNombreEtapa Not Null Varchar 100

Tabla Empleado Mantiene el registro de los empleados

Restriccion NombreCampo Nulidad TipoDatos Tamaño

Clave Principal Clave Foranea Descripcion

empCodigo Not Null Char 5 PK empApellido Not Null Varchar 35 empNombre Not Null Varchar 35 empTelefonoCasa Null Varchar 12 empTelefonoMovil Null Varchar 12 empDireccion Null Varchar 100

empEstado Not Null Char 1 A Activo I Inactivo

Ing. Segundo José Castillo Zumarán 8

Page 9: Creacion de Tablas

Manual de SQL Server 2000 Tablas

Tabla Proyecto Mantiene un registro de todos los Proyectos que desarrolla la Empresa

Restriccion NombreCampo Nulidad TipoDatos Tamaño

Clave Principal Clave Foranea Descripcion

proCodigo Not Null Int PK proNombreProyecto Not Null Varchar 100 proInicio Null SmallDateTime proCulminacion Null SmallDateTime proPresupuesto Null Money Presupuesto del Proyecto proMontoReal Null Money Monto Real del Proyecto JefeProyecto Null Char 5 FK(Empleado) Empleado Jefe del Proyecto

proEstado Not Null Char 1

A Abandonado S Suspendido C Culminado

Tabla EtapaProyecto

Lleva un regsitro de las etapas consideradas al desarrollar un proyecto y el empleado responsable de cada una de las etapas

Restriccion NombreCampo Nulidad TipoDatos Tamaño

Clave Principal Clave Foranea Descripcion

proCodigo Not Null Integer FK(Proyecto) etaCodigo Not Null Char 2

PK FK(Etapa)

responsable Not Null Char 5 FK(Empleado) Empleado jefe de la Etapa fechaInicio Null SmallDateTime fechaFin Null SmallDateTime Tabla PersonalAsignado

Lleva un registro de todos los empleados asignados a una Etapa en un Proyeto, asi como la cantidad de horas asignadas

Restriccion NombreCampo Nulidad TipoDatos Tamaño

Clave Principal Clave Foranea Descripcion

proCodigo Not Null Integer etaCodigo Not Null Char 2

FK(EtapaProyecto)

empCodigo Not Null Char 5

PK

FK(Empleado) totalHoras Not Null Integer

Create DataBase DbProyecto Go Use DbProyecto Go Create Table EtapaDesarrollo ( etaCodigo Char(2) Constraint pk_etaDes_etaCodigo Primary Key, etaNombreEtapa Varchar(100) Not Null ) Go Create Table Empleado ( empCodigo Char(5) Constraint pk_emp_empCodigo Primary Key, empApellido Varchar(35) Not Null, empNombre Varchar(35) Not Null, empTelefonoCasa Varchar(12) Null, empTelefonoMovil Varchar(12) Null, empDireccion Varchar(100) Null, empEstado Char(1) Not Null ) Go

Ing. Segundo José Castillo Zumarán 9

Page 10: Creacion de Tablas

Manual de SQL Server 2000 Tablas

Create Table Proyecto ( proCodigo Int Constraint pk_pro_proCodigo Primary Key, proNombreProyecto Varchar(100) Not Null, proInicio SmallDateTime Null, proCulminacion SmallDateTime Null, proPresupuesto Money Null, proMontoReal Money Null, JefeProyecto Char(5) Null Constraint fk_pro_JefeProyecto References Empleado(empCodigo), proEstado Char(1) Not Null ) Go Create Table EtapaProyecto ( proCodigo Int Constraint fk_EtaPro_proCodigo References Proyecto(proCodigo), etaCodigo Char(2) Constraint fk_EtaPro_etaCodigo References EtapaDesarrollo(etaCodigo), responsable Char(5) Not Null Constraint fk_EtaPro_responsable References Empleado(empCodigo), fechaInicio SmallDateTime Null, fechaFin SmallDateTime Null, Constraint pk_EtaPro_principal Primary Key(proCodigo,etaCodigo) ) Go Create Table PersonalAsignado ( proCodigo Integer, etaCodigo Char(2), empCodigo Char(5) Constraint fk_PerAsi_empCodigo References Empleado(empCodigo), totalHoras Integer Not Null, Constraint fk_PerAsi_foranea Foreign Key(proCodigo,etaCodigo) References EtapaProyecto, Constraint pk_PerAsi_Principal Primary Key(proCodigo,etaCodigo,empCodigo) )

Modificando la Estructura de una Tabla

La sintaxis de restriccion1 es idéntica a la restricción1 de la sentencia CREATE TABLE, te la describimos a continuación, si tienes alguna duda repasa la sentencia CREATE TABLE.

La sintaxis de restriccion2 es idéntica a la restricción2 de la sentencia CREATE TABLE, te la describimos a continuación, si tienes alguna duda repasa la sentencia CREATE TABLE.

Ing. Segundo José Castillo Zumarán 10

Page 11: Creacion de Tablas

Manual de SQL Server 2000 Tablas

La cláusula ADD COLUMN (la palabra COLUMN es opcional) permite añadir una columna nueva a la tabla. Como en la creación de tabla, hay que definir la columna indicando su nombre, tipo de datos que puede contener, y si lo queremos alguna restricción de valor no nulo, clave primaria, clave foránea, e índice único, restriccion1 es opcional e indica una restricción de tipo 1 que afecta a la columna que estamos definiendo. Adición de columnas a una tabla ALTER TABLE nombre_tabla

ADD nombre_columna propiedades [restricciones]

Modificación de la definición de una columna de una tabla ALTER TABLE nombre_tabla ALTER COLUMN nombre_columna nuevas_propiedades Eliminación de columnas de una tabla ALTER TABLE nombre_tabla DROP COLUMN nombre_columna Deben quitarse todos los índices y restricciones basadas en la columna antes de proceder a su eliminación. Eliminación de una tabla

La sentencia DROP TABLE sirve para eliminar una tabla. No se puede eliminar una tabla si está abierta, tampoco la podemos eliminar si el borrado infringe las reglas de integridad referencial (si interviene como tabla padre en una relación y tiene registros relacionados).

La sintaxis es la siguiente:

Al eliminar una tabla, elimina la definición y todos los datos de una tabla, así como las especificaciones de permisos para esa tabla. Antes de eliminar una tabla, debe eliminar cualquier dependencia entre la tabla y otros objetos. Para ver las dependencias existentes, ejecute el procedimiento almacenado del sistema sp_depende. Para eliminar las vistas que dependen de la tabla utilice la sentencia DROP VIEW.

Ing. Segundo José Castillo Zumarán 11

Page 12: Creacion de Tablas

Manual de SQL Server 2000 Tablas

Obtención de la Definición de una Tabla sp_help nombre_objeto Este procedimiento permite averiguar como esta definido un objeto de la base de datos. Ejemplo sp_help DbProyecto

Ing. Segundo José Castillo Zumarán 12