domingo, 4 de diciembre de 2016

VISTAS EN SQL


“AÑO DE LA CONSOLIDACIÓN DEL MAR DE GRAU”
FACULTAD DE INGENIERÍA
ESCUELA ACADÉMICA PROFESIONAL DE INGENIERÍA DE SISTEMAS Y TELEMÁTICA
LENGUAJE DE PROGRAMACIÓN II
“TRABAJO DE INVESIGACIÓN”
VISTAS EN SQL
AUTORES
MARCHENA HUANUIRE, Greinder Alexis
VASQUEZ VENTURA, Liz Evelin
DOCENTE
PORRO CHULLI, Marco Aurelio
BAGUA GRANDE - AMAZONAS

2016



VISTAS EN SQL


DEFINICIÓN

En teoría de bases de datos, una vista es una consulta que se presenta como una tabla (virtual) a partir de un conjunto de tablas en una base de datos relacional.
Las vistas tienen la misma estructura que una tabla: filas y columnas. La única diferencia es que sólo se almacena de ellas la definición, no los datos. Los datos que se recuperan mediante una consulta a una vista se presentarán igual que los de una tabla. De hecho, si no se sabe que se está trabajando con una vista, nada hace suponer que es así. Al igual que sucede con una tabla, se pueden insertar, actualizar, borrar y seleccionar datos en una vista. Aunque siempre es posible seleccionar datos de una vista, en algunas condiciones existen restricciones para realizar el resto de las operaciones sobre vistas.
Una vista se especifica a través de una expresión de consulta (una sentencia SELECT) que la calcula y que puede realizarse sobre una o más tablas. Sobre un conjunto de tablas relacionales se puede trabajar con un número cualquiera de vistas.
La mayoría de los SGBD soportan la creación y manipulación de vistas. Las vistas se crean cuando se necesitan hacer varias sentencias para devolver una tabla final.


SINTAXIS

Las vistas pueden considerarse como tablas virtuales. Generalmente hablando, una tabla tiene un conjunto de definiciones, y almacena datos físicamente. Una vista también tiene un conjunto de definiciones, que se construye en la parte superior de la(s) tabla(s) u otra(s) vista(s), y no almacena datos físicamente.

La sintaxis para la creación de una vista es la siguiente:

Caso de una sola tabla

CREATE VIEW [nombre de la vista] AS SELECT (Aquí se especifican todos los campos a mostrar) FROM [NOMBRE DE LA TABLA]

Caso de varias tablas

CREATE VIEW [nombre de la vista] AS SELECT (Aquí se especifican todos los campos a mostrar) FROM [NOMBRE DE LA 1° TABLA] INNER JOIN [NOMBRE DE LA 2° TABLA] ON [Nombre del campo] . [NOMBRE DE LA 1° TABLA] = [Nombre del campo] . [NOMBRE DE LA 2° TABLA]


ADMINISTRACIÓN DE VISTAS

CREACIÓN

Para crear una vista debemos utilizar la sentencia CREATE VIEW, debiendo proporcionar un nombre a la vista y una sentencia SQL SELECT válida.

CREATE VIEW <nombre_vista> AS (<sentencia_select>);

Ejemplo:

Crear una vista sobre nuestra tabla alquileres, en la que se nos muestre el nombre y apellidos del cliente en lugar de su código.

 CREATE VIEW vAlquileres AS

(
SELECT            nombre,                  
                          apellidos,       
                          matricula
FROM              tAlquileres,
                         tClientes
WHERE ( tAlquileres.codigo_cliente = tClientes.codigo )
)


MODIFICACIÓN

Si queremos, modificar la definición de nuestra vista podemos utilizar la sentencia ALTER VIEW, de forma muy parecida a como lo hacíamos con las tablas. En este caso queremos añadir los campos fx_alquiler y fx_devolucion a la vista.

ALTER VIEW   vAlquileres
AS
(
SELECT      nombre,      
                    apellidos,      
                    matricula,     
                    fx_alquiler,      
                    fx_devolucion
FROM        tAlquileres,
                   tClientes
WHERE ( tAlquileres.codigo_cliente = tClientes.codigo )
)


ELIMINACIÓN

Por último podemos eliminar la vista a través de la sentencia DROP VIEW. Para eliminar la vista que hemos creado anteriormente se utilizaría:

DROP VIEW   vAlquileres;


RESUMEN

Las vistas suelen utilizarse para centrar, simplificar y personalizar la percepción de la base de datos para cada usuario. Las vistas pueden emplearse como mecanismos de seguridad, que permiten a los usuarios obtener acceso a los datos por medio de la vista, pero no les conceden el permiso de obtener acceso directo a las tablas base subyacente de la vista. Las vistas pueden utilizarse para proporcionar una interfaz compatible con versiones anteriores con el fin de emular una tabla que existía pero cuyo esquema ha cambiado. También pueden utilizarse para copiar datos entre Microsoft SQL Server a fin de mejorar el rendimiento y crear particiones de los datos.


SUMMARY

Views are often used to center, simplify and customize the perception of the database for each user. Views can be used as security mechanisms, which allow users to gain access to data through the view, but do not grant them the permission to gain direct access to the underlying base tables of the view. Views can be used to provide an interface compatible with previous versions in order to emulate a table that existed but whose schema has changed. They can also be used to copy data between Microsoft SQL Server to improve performance and partition data.


RECOMENDACIONES

  • Las vistas se crean en la base de datos activa.
  • Al crear una vista, SQL Server verifica que existan las tablas a las que se hacen referencia en ella.
  • Recomendamos probar la sentencia "select" con la cual definiremos la vista antes de crearla para asegurarnos que el resultado que retorna es el imaginado.
  • Existen algunas restricciones para el uso de "create view", a saber:

           - no puede incluir las cláusulas "compute" ni "compute by" ni la palabra clave "into";
           - no se pueden crear vistas temporales ni crear vistas sobre tablas temporales.
           - no se pueden asociar reglas ni valores por defecto a las vistas.
           - no puede combinarse con otras instrucciones en un mismo lote.
  • Se pueden construir vistas sobre otras vistas.


CONCLUSIONES

No siempre podremos actualizar los datos de una vista, dependerá de la complejidad de la misma (dependerá de si el conjunto de resultados tiene acceso a la clave principal de la tabla o no), y del gestor de base de datos. No todos los gestores de bases de datos permiten actualizar vistas, ORACLE, por ejemplo, no lo permite, mientras que SQL Server sí.
Las vistas no tienen una copia física de los datos, son consultas a los datos que hay en las  tablas, por lo que si actualizamos los datos de una vista, estamos actualizando realmente la  tabla, y si actualizamos la tabla estos cambios serán visibles desde la vista.


APRECIACIÓN DELL EQUIPO

Esto siendo dicho, hay formas en las que no tiene sentido usar una vista (y damos gracias a la vida por llegar a hacernos ver estos ejemplos desconcertantes).
 Por ejemplo:
CREATE VIEW view_books AS SELECT * FROM books;
Obviamente, esto es completamente inutil y probablemente gastará la memoria de su servidor SQL.


REFERENCIAS

keydata. (s.f.). keydata.com. Obtenido de keydata.com: http://www.1keydata.com/es/sql/sql-create-view.php
patty. (viernes de febrero de 2012). blogspot.pe. Obtenido de blogspot.pe: http://patty-sqlserver2008.blogspot.pe/2012/02/7-vistas-procedimientos-y-trigger.html
tutorialesprogramacionya. (s.f.). tutorialesprogramacionya.com. Obtenido de tutorialesprogramacionya.com: http://www.tutorialesprogramacionya.com/sqlserverya/temarios/descripcion.php?cod=109&punto=&inicio=
Valenzuela, L. (8 de abril de 2014). slideshare.net. Obtenido de slideshare.net: http://es.slideshare.net/LilianaValenzuela1/vistas-en-bases-de-datos
wikipedia. (4 de Noviembre de 2015). wikipedia.org. Obtenido de wikipedia.org: https://es.wikipedia.org/wiki/Vista_(base_de_datos)
Ziscko. ( 6 de marzo de 2010). slideshare.net. Obtenido de slideshare.net: http://es.slideshare.net/ZIscko/vistas-en-sql-y-my-sql




LINK DE NUESTRAS DIAPOSITIVAS:










domingo, 27 de noviembre de 2016

TABLAS Y TIPOS DE DATOS






“AÑO DE LA CONSOLIDACIÓN DEL MAR DE GRAU”
FACULTAD DE INGENIERÍA DE SISTEMAS
ESCUELA ACADÉMICA PROFESIONAL DE INGENIERÍA DE SISTEMAS Y TELEMÁTICA
LENGUAJE DE PROGRAMACIÓN II
“TRABAJO DE INVESIGACIÓN”
TABLAS Y TIPOS DE DATOS

AUTORES
MARCHENA HUANUIRE, Greinder Alexis
VASQUEZ VENTURA, Liz Evelin

DOCENTE
PORRO CHULLI, Marco Aurelio
BAGUA GRANDE - AMAZONAS
2016






TABLAS Y TIPOS DE DATOS

TIPOS DE DATOS
Un tipo de datos, realmente define el conjunto de valores válidos para los campos definidos de ese tipo. Indica si el campo puede contener: datos numéricos, de caracteres, moneda, fecha y hora, etc.
SQL Server proporciona un conjunto de tipos de datos del sistema que define todos los tipos de datos que pueden utilizarse. También podemos definir nuestros propios tipos de datos en Transact-SQL.
Los tipos de datos más utilizados son:
v  Numéricos.
v  Fecha y hora.
v  Cadena de caracteres.
v  Binarios.

TIPOS DE DATOS NUMÉRICOS.
SQL Server dispone de varios tipos de datos numéricos. Cuanto mayor sea el número que puedan almacenar mayor será en consecuencia el espacio utilizado para almacenarlo. Como regla general se recomienda usar el tipo de dato mínimo posible. Todos los datos numéricos admiten el valor NULL.
ü  Bit: Una columna o variable de tipo bit puede almacenar el rango de valores de  1 a 0.
ü  Tinyint: Una columna o variable de tipo tinyint puede almacenar el rango de valores de 0 a 255.
ü  SmallInt: Una columna o variable de tipo smallint puede almacenar el rango de valores -32768 a 32767.
ü  Int: Una columna o variable de tipo int puede almacenar el rango de valores -231 a 231-1.
ü  BigInt: Una columna o variable de tipo bigint puede almacenar el rango de valores -263 a 263-1.
ü  Decimal (p, s): Una columna de tipo decimal puede almacenar datos numéricos decimales sin redondear. Donde p es la precisión (número total del dígitos) y s la escala (número de valores decimales).
ü  Float: Una columna de datos float puede almacenar el rango de valores -1,79x-10308 a 1,79x-10308, si la definimos con el valor máximo de precisión. La precisión puede variar entre 1 y 53.
ü  Real: Sinónimo de float (24). Puede almacenar el rango de valores -3,4x-1038 a 3,4x-1038.
ü  Money: Almacena valores numéricos monetarios de -263  a 263-1, con una precisión de hasta diez milésimas de la unidad monetaria.
ü  SmallMoney: Almacena valores numéricos monetarios de -214.748,3647 a 214.748,3647, con una precisión de hasta diez milésimas de la unidad monetaria.
TIPOS DE DATOS FECHA Y HORA.
ü  Datetime: Almacena fechas con una precisión de milisegundo. Debe usarse para fechas muy específicas.
ü  SmallDatetime: Almacena fechas con una precisión de minuto, por lo que ocupa la mitad de espacio de que el tipo datetime, para tablas que puedan llegar a tener muchos datos es un factor a tener muy en cuenta.
ü  TimeStamp: Se utiliza para marcar un registro con la fecha de inserción – actualización. El tipo timestamp se actualiza automáticamente cada vez que insertamos o modificamos los datos.
TIPOS DE DATOS  CADENA DE CARACTERES.
ü  Char(n): Almacena n caracteres en formato ASCII, un byte por cada letra. Cuando almacenamos datos en el tipo char, siempre se utilizan los n caracteres indicados, incluso si la entrada de datos es inferior. Por ejemplo, si en un char (5), guardamos el valor ‘A’, se almacena ‘A‘, ocupando los cinco bytes.
ü  Varchar(n): Almacena n caracteres en formato ASCII, un byte por cada letra. Cuando almacenamos datos en el tipo varchar, únicamente se utilizan los caracteres necesarios, Por ejemplo, si en un varchar (255), guardamos el valor ‘A’, se almacena ‘A’, ocupando solo un byte bytes.
ü  Varchar(max): Igual que varchar, pero al declararse como max puede almacenar 231-1 bytes.
ü  Nchar(n): Almacena n caracteres en formato UNICODE, dos bytes por cada letra. Es recomendable utilizar este tipo de datos cuando los valores que vayamos a almacenar puedan pertenecer a diferentes idiomas.
ü  Nvarchar(n): Almacena n caracteres en formato UNICODE, dos bytes por cada letra. Es recomendable utilizar este tipo de datos cuando los valores que vayamos a almacenar puedan pertenecer a diferentes idiomas.
ü Nvarchar(max): Igual que varchar, pero al declararse como max puede almacenar 231-1 bytes.
TIPOS DE DATOS BINARIOS.
ü  Binary: Se utiliza para almacenar datos binarios de longitud fija, con una longitud máxima de 8000 bytes.
ü  Varbinary: Se utiliza para almacenar datos binarios de longitud variable, con una longitud máxima de 8000 bytes. Es muy similar a binary, salvo que varbinary utiliza menos espacio en disco.
ü  Varbinary(max): Igual que  varbinary, pero puede almacenar 231-1 bytes.
Existen otros tipos de Datos que podemos utilizar en SQL Server, pero estos son los más utilizados….

ADMINISTRACIÓN DE TABLAS
Las tablas son objetos de las bases de datos diseñados para contener los datos. Una tabla está conformada por un conjunto de campos identificados comúnmente como columnas. Los datos a su vez se organizan en las tablas como filas y se conocen como registros, es decir, cada registro está integrado por el número de campos de la tabla constituyéndose un arreglo o matriz.
Cuando queremos crear una tabla es necesario definir qué tipo de valores o de datos será contenido en cada uno de los campos.

CREACIÓN
CREATE TABLE es un comando del lenguaje de definición de datos DDL. Su uso es tan sencillo como respirar. Simplemente pondremos la sentencia seguido del nombre de la tabla y a continuación definiremos cada una de las columnas que contendrá.
SINTAXIS
CREATE TABLE nombre_tabla (
columna1 tipoDeDato,
columna2 tipoDeDato,
columna3 tipoDeDato,
columnan tipoDeDato,
PRIMARY KEY (una o más columnas)
);
La extensión de los atributos tipo VARCHAR puede variar según tus convicciones sobre qué tan largo serán las cadenas que un cliente pueda tener.

MODIFICACIÓN
La sentencia ALTER TABLE sirve para modificar la estructura de una tabla que ya existe. Mediante esta instrucción podemos añadir columnas nuevas, eliminar columnas. Ten cuenta que cuando eliminamos una columna se pierden todos los datos almacenados en ella.
También nos permite crear nuevas restricciones o borrar algunas existentes. La sintaxis puede parecer algo complicada pero sabiendo el significado de las palabras reservadas la sentencia se aclara bastante; ADD (añade), ALTER (modifica), DROP (elimina), COLUMN (columna), CONSTRAINT (restricción).
La sintaxis es la siguiente:


ELIMINACIÓN
La sentencia DELETE
Para borrar datos de una tabla, debemos utilizar la sentencia DELETE.
La sintaxis de la sentencia DELETE es la siguiente:
DELETE FROM <nombre_tabla>
[ WHERE <condicion>];
La sentencia TRUNCATE
Para realizar un borrado completo de tabla debemos considerar la posibilidad de utilizar la sentencia TRUNCATE, mucho más rápida que DELETE.
La sintaxis de la sentencia TRUNCATE es la siguiente:
TRUNCATE TABLE <nombre_tabla>;
Cuando trabajemos con la sentencia TRUNCATE debemos tener en cuenta las siguientes consideraciones.
ü  La sentencia TRUNCATE no es transaccional. No se puede deshacer.
ü  La sentencia TRUNCATE no admite clausula WHERE. Borra toda la tabla.
ü  No todos los gestores de bases de datos admiten la sentencia TRUNCATE.

RESTRICCIONES DE COLUMNAS
PRIMARY KEY
Una tabla suele tener una columna o una combinación de columnas cuyos valores identifican de forma única cada fila de la tabla. Estas columnas se denominan claves principales de la tabla y exigen la integridad de entidad de la tabla. Puede crear una clave principal mediante la definición de una restricción PRIMARY KEY cuando cree o modifique una tabla.
Una tabla sólo puede tener una restricción PRIMARY KEY y ninguna columna a la que se aplique una restricción PRIMARY KEY puede aceptar valores NULL. Debido a que las restricciones PRIMARY KEY garantizan datos únicos, con frecuencia se definen en una columna de identidad.







Como se muestra en la siguiente ilustración, las columnas ProductID y VendorID de la tabla Purchasing.ProductVendor forman una restricción PRIMARY KEY compuesta para esta tabla. Así se garantiza que la combinación de ProductID y VendorID es única.

FOREIGN KEY
Una clave externa (FK) es una columna o combinación de columnas que se utiliza para establecer y exigir un vínculo entre los datos de dos tablas. Puede crear una clave externa mediante la definición de una restricción FOREIGN KEY cuando cree o modifique una tabla.
En una referencia de clave externa, se crea un vínculo entre dos tablas cuando las columnas de una de ellas hacen referencia a las columnas de la otra que contienen el valor de clave principal. Esta columna se convierte en una clave externa para la segunda tabla.

Por ejemplo, la tabla Sales.SalesOrderHeader de la base de datos AdventureWorks2008R2 tiene un vínculo a la tabla Sales.SalesPerson porque existe una relación lógica entre pedidos de ventas y personal de ventas. La columna SalesPersonID de la tabla SalesOrderHeader coincide con la columna de clave principal de la tabla SalesPerson. La columna SalesPersonID de la tabla SalesOrderHeader es la clave externa para la tabla SalesPerson.

CHECK
Las restricciones CHECK exigen la integridad del dominio mediante la limitación de los valores que puede aceptar una columna. Son similares a las restricciones FOREIGN KEY porque controlan los valores que se colocan en una columna. La diferencia reside en la forma en que determinan qué valores son válidos: las restricciones FOREIGN KEY obtienen la lista de valores válidos de otra tabla, mientras que las restricciones CHECK determinan los valores válidos a partir de una expresión lógica que no se basa en datos de otra columna.
Puede crear una restricción CHECK con cualquier expresión lógica (booleana) que devuelva TRUE (verdadero) o FALSE (falso) basándose en operadores lógicos.
LIMITACIONES DE LAS RESTRICCIONES CHECK
Una restricción CHECK devuelve TRUE cuando la condición que está comprobando no es FALSE para ninguna fila de la tabla. Si una tabla recién creada no tiene filas, cualquier restricción CHECK en esta tabla se considerará válida. Esta situación puede generar resultados inesperados, como en el siguiente ejemplo.
CREATE TABLE CheckTbl (col1 int, col2 int);
GO
CREATE FUNCTION CheckFnctn()
RETURNS int
AS
BEGIN
   DECLARE @retval int
   SELECT @retval = COUNT(*) FROM CheckTbl
   RETURN @retval
END;
GO
ALTER TABLE CheckTbl
ADD CONSTRAINT chkRowCount CHECK (dbo.CheckFnctn() >= 1 );
GO
La restricción CHECK que se agrega especifica que como mínimo debe existir una fila en la tabla CheckTbl. Sin embargo, puesto que no hay filas en la tabla contra la que se comprueba la condición de esta restricción, la instrucción ALTER TABLE será correcta.

DEFAULT
La restricción "default" especifica un valor por defecto para un campo cuando no se inserta explícitamente en un comando "insert".
Anteriormente, para establecer un valor por defecto para un campo empleábamos la cláusula "default" al crear la tabla, por ejemplo:
create table libros(
  ...
  autor varchar(30) default 'Desconocido',
  ...
 );
Cada vez que establecíamos un valor por defecto para un campo de una tabla, SQL Server creaba automáticamente una restricción "default" para ese campo de esa tabla.
Dicha restricción, a la cual no le dábamos un nombre, recibía un nombre dado por SQL Server que consiste "DF" (por default), seguido del nombre de la tabla, el nombre del campo y letras y números aleatorios.

UNIQUE
Las restricciones son reglas que Motor de base de datos de SQL Server aplica de forma automática. Por ejemplo, puede usar restricciones UNIQUE para garantizar que no se escriben valores duplicados en columnas específicas que no forman parte de una clave principal. Tanto la restricción UNIQUE como la restricción PRIMARY KEY exigen la unicidad; sin embargo, debe usar la restricción UNIQUE y no PRIMARY KEY si desea exigir la unicidad de una columna o una combinación de columnas que no forman la clave principal.
A diferencia de las restricciones PRIMARY KEY, las restricciones UNIQUE permiten valores NULL. Sin embargo, de la misma forma que cualquier valor incluido en una restricción UNIQUE, solo se admite un valor NULL por columna. Es posible hacer referencia a una restricción UNIQUE con una restricción FOREIGN KEY.
Cuando se agrega una restricción UNIQUE a una o varias columnas de la tabla, de forma predeterminada, el Motor de base de datos examina los datos existentes en las columnas para garantizar que todos los valores sean únicos. Si se agrega una restricción UNIQUE a una columna que contiene valores duplicados, Motor de base de datos devuelve un error y no agrega la restricción.
Motor de base de datos crea automáticamente un índice UNIQUE para exigir, de acuerdo con la restricción UNIQUE, que no haya duplicados. Por lo tanto, si se intenta insertar una fila duplicada, Motor de base de datos devolverá un mensaje de error para indicar que se ha infringido la restricción UNIQUE y no se agregará la fila a la tabla. A menos que se especifique explícitamente un índice clúster, se creará de forma predeterminada un índice único, no clúster, para exigir la restricción UNIQUE.
SINTAXIS:
USE AdventureWorks2012;  
GO 
ALTER TABLE Person.Password  
ADD CONSTRAINT AK_Password UNIQUE (PasswordHash, PasswordSalt);  
GO

EJEMPLOS DE TABLAS
CREATE TABLE CLIENTE (
DNI VARCHAR(10),
&lNOMBRE VARCHAR(20),
FECHA_NAC DATE NOT NULL,
TFNO VARCHAR(10),
APELLIDOS VARCHAR(100),
CONSTRAINT CLIENTE_PK PRIMARY KEY (DNI)
)




RESUMEN
Las tablas son objetos de las bases de datos diseñados para contener los datos. Una tabla está conformada por un conjunto de campos identificados comúnmente como columnas. Los datos a su vez se organizan en las tablas como filas y se conocen como registros, es decir, cada registro está integrado por el número de campos de la tabla constituyéndose un arreglo o matriz. Cuando queremos crear una tabla es necesario definir qué tipo de valores o de datos será contenido en cada uno de los campos.
En la actualidad, las organizaciones deben afrontar numerosos retos relacionados con los datos; por ejemplo, la necesidad de toma de decisiones más rápidas y controladas por datos, la necesidad de aumentar la productividad y flexibilidad del personal de desarrollo y la presión para reducir los presupuestos generales relacionados con la tecnología de la información, a la vez que se exige escalar la infraestructura para que se adapte a exigencias cada vez mayores.




SUMMARY
Tables are objects in databases designed to hold data. A table is made up of a set of fields commonly identified as columns. The data in turn are organized in the tables as rows and are known as registers, ie each record is composed of the number of fields in the table constituting an array or matrix. When we want to create a table it is necessary to define what type of values or data will be contained in each of the fields.
Organizations today face numerous data challenges; For example, the need for faster, data-driven decision-making, the need to increase the productivity and flexibility of development staff, and the pressure to reduce overall information technology budgets, while requiring Scale the infrastructure to adapt to increasing demands.




RECOMENDACIONES
Antes de Crear una tabla en SQL Server hay que tener en cuenta los tipos de datos que debe contener la tabla, que columnas aceptan valores nulos, si se deben de utilizar restricciones o vales predeterminados y reglas, que columnas son claves principales y claves externas.
Ø  Completar los datos que se requieren en SQL SERVER para tener una mejor información y personalizada sobre los datos que necesite el sistema.

Ø  Consigue alcanzar los objetivos de SQL Server, para una solución flexible, personalizada y con la mejor capacidad de integración en la mayoría de sistemas tecnológicos.



CONCLUSIONES
Al conocer los tipos de datos que debes utilizar al momento de crear una tabla, las restricciones que debes tener en cuenta, Si o si vas a crear una buena tabla y tener una buena integridad de datos. Ya que Gracias a Foreign Key el servidor garantiza que no metes en un campo un valor que no existe en otro sitio donde obligatoriamente debería existir. Por ejemplo, si tienes una tabla de Pedidos puedes establecer un Foreign Key a la tabla de Clientes, de forma que el código de cliente que se introduce en el pedido siempre sea el de un cliente existente. Así garantizas que con independencia de los errores que puedan existir en uno o varios de los programas cliente que acceden a la base de datos, nunca podrá ocurrir que se grabe un pedido cuyo cliente no existe.
Todos los campos de una tabla tienen propiedades. Éstas definen las características y el comportamiento del campo. La propiedad más importante de un campo es su tipo de datos.
El tipo de datos de un campo determina otras muchas cualidades importantes del mismo, como:
Ø  La forma de usar el campo en expresiones.
Ø  El tamaño máximo de un valor del campo.
Ø  Si el campo se puede indizar.

Ø  Los formatos que se pueden usar con el campo.



APRECIACIÓN DEL EQUIPO
Ø  Es de Gran importación realizar una buena creación de una tabla en SQL Server ya que ello te va a ayudar que tu base de datos este buen estructurada y esto se consigue conociendo los tipos de datos que te brinda SQL Server, las restricciones que debes tener en cuenta al momento de crearlas.

Ø  Después de crear un campo y de establecer su tipo de datos, podrá establecer otras propiedades. Los cuales nos serán muy útiles para poder identificar los campos de las tablas que deseo realizar donde tendremos que identificar el tamaño del campo, también determina la cantidad de espacio en disco que necesita cada valor del campo Número. Según el tamaño del campo, el número puede ocupar exactamente 1, 2, 4, 8, 12 o 16 bytes.

REFERENCIAS


aulaclic. (Julio de 2001). aulaclic.es. Obtenido de aulaclic.es: http://www.aulaclic.es/sql/t_8_3.htm

david, f. ( 5 de ENERO de 2013). wordpress.com. Obtenido de wordpress.com: https://franklindavidsql.wordpress.com/2013/01/05/tipos-de-datos-en-microsoft-sql-server-2012/
microsoft. (s.f). microsoft.com. Obtenido de microsoft.com: https://msdn.microsoft.com/es-es/library/ms187752.aspx
microsoft. (S.F.). microsoft.com. Obtenido de microsoft.com: https://msdn.microsoft.com/es-pe/library/ms190024.aspx
microsoft. (S.F.). microsoft.com. Obtenido de microsoft.com: https://msdn.microsoft.com/es-pe/library/ms187550.aspx#Unique
microsoft. (S.F.). technet.microsoft.com. Obtenido de technet.microsoft.com: https://technet.microsoft.com/es-es/library/ms188258(v=sql.105).aspx
microsoft. (S.F.). technet.microsoft.com. Obtenido de technet.microsoft.com: https://technet.microsoft.com/es-es/library/ms175464(v=sql.105).aspx
microsoft. (S.F.). technet.microsoft.com. Obtenido de technet.microsoft.com: https://technet.microsoft.com/es-es/library/ms191236(v=sql.105).aspx
patricio33. (3 de marzo de 2010). wordpress.com. Obtenido de wordpress.com: https://patricio33.wordpress.com/2010/03/03/ejemplo-de-creacion-de-tablas-mediante-sql-ddl/
Revelo, J. ( 9 de mayo de 2014). hermosaprogramacion.com. Obtenido de hermosaprogramacion.com: http://www.hermosaprogramacion.com/2014/05/create-table-sql/
Sánchez, G. S. (S.F.). blogspot.pe. Obtenido de blogspot.pe: http://sqlserverr.blogspot.pe/2013/12/creacion-y-administracion-de-tablas-en.html
tutorialesprogramacionya. (S.F). tutorialesprogramacionya.com. Obtenido de tutorialesprogramacionya.com: http://www.tutorialesprogramacionya.com/sqlserverya/temarios/descripcion.php?cod=53&punto=47&inicio=
wikipedia. (12 de noviembre de 2016). wikipedia.org. Obtenido de wikipedia.org: https://es.wikipedia.org/wiki/Tabla_(base_de_datos)