Tipos de Datos en SQL

Buenas tardes gente, lectores y amigos, el día de hoy hablaremos de los tipos de datos en SQL Server, pero sobre todo aprenderemos que nosotros podemos crear nuestros propios tipos de datos. Así es, nosotros podemos crear un nuevo tipo de datos en SQL Server para usarlo en nuestras tablas.
Vamos a continuar con otro tema que viene el el último libro que adquirí, que les vuelvo a dejar la imagen por si alguno lo quiere, puede comprarlo. Pues bien, vamos a pasar al tema

Los tipos de Datos en SQL Server

Sql brinda una serie de datos para almacenar la información, la correcta selección del tipo de datos implica un determinado valor a almacenar, por ejemplo: carácter, enteros, binario, fechas, etc.

Existen múltiples tipos de datos, que resumiremos brevemente:

Char: Datos de tipo carácter, los datos deben tener una longitud fija máximo de 8KB. Por ejemplo el DNI tiene 8 caracteres, no menos, no mas DNI Char(8), otro ejemplo sería la categorización de empleados mediante una letra, no mas de una letra, no menos Categoria Char(1), etc.



Varchar: Es similar al Char, solo que en el varchar puede variar el número de caracteres, por ejemplo el campo Nombre varchar(60), quiere decir que el nombre puede tener máximo 60 caracteres, pero también puede tener menos que eso

Text: Los datos puede tener caracteres ASCII que excedan lo 8Kb, por ejemplo, este campo puede tener todo un memorándum, incluso un libro guardado ahí

DateTime: Fechas en el rango del 1 de enero de 1753 al 31 de diciembre de 9999, cuyo formato será:
24-05-2015 13:28:23.233

SmallDateTime: Fechas del rango del 1 de enero de 1900 al 06 de junio de 2079, y su formato será:
24-05-2015 13:28:23.233

Time: Almacenará la hora, en el formato 13:30:26.2365412

Date: Nos almacenará un formato de hora 24-05-2015

Decimal: Los datos pueden tener hasta 30 dígitos, podrán estar en el lado derecho del punto decimal

Float: Datos del rango -1.79E + 308 hasta 1.79E+308

BigInt: De -2^63 (-9.223.372.036.854.775.808) a 2^63 ( (-9.223.372.036.854.775.808)

Int: De -2^31 (-2.147.483.648) a 2^31((-2.147.483.648)

SmallInt: Datos numéricos del rango -32768 - 32768

TinyInt: De 0 a 255

Money: Tipo de datos para los datos que sean cantidades monetarias.

Pues bien, estos son algunos de los datos predeterminado que tiene SQL, pero les comentaba podemos agregar nosotros nuestro propios.

Vamos a implementar un tipo de datos para guardar el número de un empleado que tiene que tener 8 caracteres de longitud y ademas no puede ser nulo, para eso vamos a crear el tipo de campo llamado CodigoEmpleado, vamos a ejecutar nuestro siguiente Script

--1. 

use agenciacd2
--2
sp_addtype Codigo, 'char(8)', 'NOT NULL'
go

--3
SELECT S.NAME, S.XTYPE, S.LENGTH
FROM sys.systypes S

En el punto 1 se activa la base de datos sobre la cual crearemos el tipo de dato.

En el punto 2 crearemos el tipo de dato personalizado, mediante el store procedure sp_addtype, que recibirá tres parámetros, el primero es el nombre del tipo personalizado, el segundo es el tipo de dato y el tercro es la restricción.

En el punto 3 hacemos una consulta a la tabla de sistema llamada systypes para que nos retorne todos los datos soportados por SQL, retornandonos  el siguiente resultado:


Podemos observar que SQL contiene ahora un tipo de datos llamado Codigo y que contiene 8 caracteres de longiud, con ésto podríamos crear una tabla como en el siguiente ejemplo:


create table pasajero (
codigo Codigo,
nombre varchar (60))

Como vemos en el ejemplo, funciona esque query a la perfección,  y de ésta manera aprendimos a crear tipos de datos personalizados en SQL, espero esta información les sirva, compartan y comenten o denle un clic a algún anuncio.

Muchas gracias

1 comentario:

  1. en el ejemplo de dni con nchar(8) el 8 no corresponde con la cantidad de caracteres, tener cuidado

    ResponderBorrar

Featured Post

Como saber la versión de SQL que tengo

 Buenas tardes queridos lectores, el día de hoy les traigo un post muy básico, pero útil en determinadas circunstancias, cuando queremos sab...