Beruflich Dokumente
Kultur Dokumente
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.
Decimal decimal(p,s) dec Números enteros o fraccionarios de -10^38+1a De 5 a 17 bytes, en función de la precisión
empaquetado numeric 10^38-1 especificada, p, que puede tener hasta 38 cifras. De
(numérico exacto) promedio, hace falta 1 byte de almacenamiento para
cada 2 cifras de precisión.
Coma flotante float (precisión de hasta float(n) donde n está entra 1 y Aproximaciones de números de Entre 4 y 8 bytes, dependiendo de la precisión
(numérico 15cifras) 53 e indica el número de bits -1.79E+308 a 1.79E+308
aproximado) que se utilizan para almacenar
la mantiza del número flota en
notación científica Double
precisión
real (precisión de 7 cifras) float(n) donde n está entra 1 y Aproximaciones de números de 4 bytes
24 -3.40E+38 a 3.40E+38
Carácter (longitud char(n) character(n) character Hasta 8.000 caracteres, según indique n, del 1 byte por cada carácter n declarado, aunque no se
fija) (character sin un tamaño conjunto de caracteres instalado utilice en su totalidad
específico es sinónimo de un
campo de 1 carácter, char(1))
Carácter (longitud varchar(n) character varying (n), char Hasta 8.000 caracteres, según indique n, del 1 byte por cada carácter almacenado. Los
variable) varying(n) conjunto de caracteres instalado caracteres declarados, pero no utilizados no
consumen espacio de almacenamiento
Cadenas de nchar(n) national character(n) national Hasta 4.000 caracteres 2 bytes por cada carácter declarado
caracteres Unicote char(n)
Nvarchar(n) national character(n) varying(n) Hasta 4.000 caracteres 2 bytes por cada carácter almacenado. Los
national char varying(n) caracteres declarados, pero no utilizados no
consumen espacio de almacenamiento
ntext national text hasta 2^30-1 (1.073.741.823) caracteres Es dos veces el número de caracteres especificado
Binario (longitud fija) binary(n) Datos binarios de longitud fija de n + 4 bytes aunque no se utilicen totalmente
n bytes. El argumento n debe ser valor
comprendido entre 1 y 8.000
Binario (longitud Varbinary(n) binary varying Datos binarios de longitud variable de n bytes. El tamaño de almacenamiento es la longitud actual
variable) El argumento debe ser un valor comprendido de los datos escritos + 4 bytes
entre 1 y 8.000
Texto largo/BLOB text e image Text: Datos de tipo carácter hasta 2^31-1 Si no es nulo, se utiliza un puntero de 16 bytes en la
(2.147.438.647) caracteres Image: Datos página de datos mas el número de páginas de 8Kb
binarios hasta 2^31-1 (2.147.483.647) que sean necesarias para guardar los datos reales.
caracteres. Los tipos de datos text e image son Las páginas de tipo text e image pueden
siempre de longitud variable compartirse con otros datos de tipo text e image de
la misma tabla
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:
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.
Tabla Empleado
Mantiene el registro de los empleados
Restriccion
NombreCampo Nulidad TipoDatos Tamaño Descripcion
Clave Principal Clave Foranea
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
A Activo
empEstado Not Null Char 1 I Inactivo
Tabla Proyecto
Mantiene un registro de todos los Proyectos que desarrolla la Empresa
Restriccion
NombreCampo Nulidad TipoDatos Tamaño Descripcion
Clave Principal Clave Foranea
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
A Abandonado
proEstado Not Null Char 1 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 Descripcion
Clave Principal Clave Foranea
proCodigo Not Null Integer FK(Proyecto)
PK
etaCodigo Not Null Char 2 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 Descripcion
Clave Principal Clave Foranea
proCodigo Not Null Integer
FK(EtapaProyecto)
etaCodigo Not Null Char 2 PK
empCodigo Not Null Char 5 FK(Empleado)
totalHoras Not Null Integer
Create DataBase DbProyecto
Go
Use DbProyecto
Go
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.