Bueno vamos a continuar con la clase de análisis de tipos de datos existentes en SQL Server ya que se
les prepare un documento donde están todos los tipos de datos definidos como recurso en la sección así
que lo pueden descargar sin ningún problema y lo pueden tener para tenerlos como consulta al comienzo
de todo lo que les coloque en un digamos un resumen de lo que significa de lo que representan las unidades
medida en informática.
Es decir partimos de lo que vale un bit hasta seguimos por el bajo y tranquilo y no me daba siglo etcétera.
Esto es más que nada para que tengan una noción de lo que puede llegar a ocupar un tipo de dato en un
campo de la tabla no porque no se olviden que los datos que están almacenados en las tablas ocupan espacio
entonces ocupan espacio y nosotros tenemos que tener bien en claro que qué tipo de dato es qué tipo
de dato definimos y cuánto espacio nos ocupa o nos puede llevar a ocupar cierto valor eso lo tenemos
que tener bien en claro para definir una base de datos óptima porque siempre porque siempre hablamos
de una base de datos óptima porque nosotros podemos definir los tipos de dato y asignarle valores súper
grandes sin importar yo me puedo preocupar sobre el tipo de datos que puedo asignar.
Por ejemplo en un campo si yo voy a tener un valor del nombre de una persona yo podría ser campo definirle
que sea un valor de texto de 2000 caracteres por ejemplo.
Pero eso no es óptimo porque no es óptimo porque un nombre es muy raro que llegue a tener esa cantidad
de caracteres animo a decir que es casi imposible que tenga tantos.
Entonces si nosotros multiplicamos ese campo de 2000 caracteres por la cantidad de registro que podemos
llegar a tener en esa tabla que pueden ser millones estamos hablando de una base de datos que no está
optimizada al que está optimizada.
Por qué.
Porque voy a tener voy a tener y voy a estar reservando espacio que no voy a llenar nunca y nunca lo
voy a utilizar.
Entonces tenemos que tomar otra metodología que más adelante vamos a explicar para los que saben digamos
de cuando hablamos de unidades de medida de la informática.
Bueno esto lo van a saltear pero hacemos un breve repaso de lo que representa un bit que un bit puede
ser puede tomar los valores de cero o uno.
Eso es lo que equivale un bit entonces un bit representan 8 bits o un kilo Heyt representan 1024 bits
megabytes 1024 kilobytes.
Y así seguimos pasando por el terapeuta y el petaba que son que representan 1024 terabytes.
Esto a modo de información como para que tengan presente las unidades de medidasde de archivos de tamaños
en informática como para tener una idea de lo que representa.
Entonces continuamos con los tipos de datos SQL más estándar son los más utilizados nosotros vamos a
vamos a hacer una revisión de los tipos de datos más utilizados en SQL Server vamos a hacer un repaso
Primeramente tenemos tipos de datos numéricos tenemos tipos de datos de texto y binarios y tenemos tipos
de datos de fecha y hora.
Esos son los tres grandes grupos en que se dividen un tipo de dato.
Si dentro de los tipos de datos numéricos tenemos los enteros tenemos los enteros y tenemos los decimales
entonces los tipo de dato entero si tenemos el bit el Taine se Molinet integer que es el que se abrevia
Hint y vigente que sería un interior grande.
Si ahora tenemos Taine que representa un entero pequeño si un Taine integra el tipo de bit que puede
tener dos valores 0 o 1.
Después tenemos los decimales tenemos el tipo de Atom Mony y decimal ok seguimos con los tipo de texto
binarios tenemos los tipos de datos de texto Char parchar en echar y marchar ahora los vamos a ver en
detalle y los tipos de datos binarios de Binary Ibarz Binary tipo datos de fecha y hora tipo de datos
Toit tipo de dato Timm tipo de dato daytime Ishmael daytime.
Ahora vamos a detallar cada uno cada uno de estos tipos de datos para que los tengan bien claro vamos
a ver el tipo de datos bit si puede ser un tipo de dato y va a ocupar el valor de un bit un bit va a
tener ese campo va a tener el valor de cero o uno.
Si True o fouls verdadero o falso si esa es esos son los dos posibles valores que puede tener un campo
de tipo bit no puede tener otro valor cualquiera de estos dos sí puede puede tener Null que digamos.
Más adelante lo vamos a ver bien en detalle pero no significa que ese campo no tiene valor pero digamos
si tiene valor puede tener o cualquiera de estos dos valores no otro.
Seguimos con el campo Taine int que ocupa un bit y va de 0 a 255.
Es decir que yo puedo tener valores de 0 a 255 un número que puede ser cero entre 0 y 255 no puede superar
255.
Por eso este campo me va a ocupar un bit.
Para qué se usan estos campos.
Estos campos normalmente se usan cuando tengo que almacenar números pequeños que sé que no van a superar
cierta cierta longitud estamos porque sepan que si yo a un campo que por ejemplo está Ngen le quisiese
grabar un número el número 300 por ejemplo.
Cómo supera 255.
No me lo va a dejar grabar y me va a dar un error.
Entonces cuando yo tengo la certeza de que ese campo va a ser pequeño y va a estar dentro de este rango
de su próximo cinco lo puedo definir como Tinita puede ser un campo de edad por ejemplo si el dato de
una persona que es la edad bueno el campo de da lo podría definir como Taine sin ningún problema después
tenemos el campo Molinet el campo Molinet ocupa dos bits.
Entonces va de menos 2 a la 15.
Si hasta 2 a la 15 menos 1 va de menos 32 mil 768 hasta treinta y dos mil setecientos sesenta y siete.
Dentro de ese rango yo puedo guardar valores en ese campo que estén contemplados dentro de esa DC DC
desde hasta cierto entonces seguimos con el campo de hint.
El campo no ocupa 4 bits.
Si iba de menos de 2 billones menos 2 billones hasta 2 billones 147 1483 y más numeritos.
Este es un campo de datos.
Es un tipo de dato numérico muy grande para almacenar un número muy grande como pueden ver normalmente
estos tipos de datos se utilizan en campos donde yo quiero ir almacenando un valor incremental.
Qué quiere decir incremental incremental un valor que se va incrementando a medida que voy agregando
registros en la tabla.
Si arrancamos con el valor el número 1 hasta llegar al valor que registro que tenga la tabla pero normalmente
el tipo de dato se usa para esos tipos de campo en el que se van incrementando los valores y no sé hasta
cuándo.
Hasta cuándo van a llegar van a ser muchos.
Acá tengo la posibilidad de almacenar hasta 2 billones es muchísimo para una tabla pero bueno podría
llegar a necesitar más.
Podría llegar a afectar más entonces el caso en que usaríamos el campo bint que ya me ocupa 8 bits y
me puede almacenar un valor inmenso que va de este valor negativo hasta este valor positivo
tenemos que tener mucho cuidado en el uso de este tipo de dato porque nos permite almacenar un número
muy grande muy grande y este digamos no está bueno tener definido un campo con este valor y tener almacenado
y tenerlo almacenado números números muy chicos porque no se olviden que va a estar ocupando 8 bits
por campo.
Entonces ese valor se multiplica por la cantidad de registros que vaya a tener.
Después tenemos el tipo de dato Money que ocupa 8 bits y va desde este valor inmensamente grande también
hasta este valor.
Ese tipo de automóvil normalmente se usa para almacenar importes precios y por qué almacena valores
con cuatro decimales entonces para un importe o un precio está bien.
Es aceptable este valor así que normalmente se utiliza para ese tipo de dato.
Después tenemos el tipo de dato decimal en el que se definen con dos valores el primer valor es la precisión
y el segundo valor es la escala que la precisión y que es la escala y la precisión es digamos del valor
decimal.
Por ejemplo vamos a escribirlo aquí abajo vamos a escribir Abajo un valor decimal por ejemplo ciento
veinte 120.000
coma cincuenta.
Este valor entonces la precisión es la cantidad de números en total que va a tener esa esa definición
de decimales.
Es decir ahora tengo uno dos tres cuatro cinco seis siete ocho sin contar el punto son ocho son ocho
números en total si para el caso de que está definido acá que dice decimal diez coma dos tendríamos
que agregarle dos numeritos más.
Entonces ahí tenemos un total de diez números para lo que sería la precisión y la escala en este caso
se refiere a la cantidad de números en la parte decimal que voy a tener entonces acá tengo definido
10 para la precisión y dos para la escala es decir para los decimales.
Acá tengo y acá tengo perfecto dos decimales entonces 10 corresponde a la precisión que representa al
total de la del valor numérico y 2 a los decimales si entonces no hay no hay que confundir esto con
10 más 12 es decir 10 para el número y dos para el decimal es decir 12 no son 10 10 dígitos en total
para la precisión y a eso se le restan se toman en cuenta dos para los decimales.
Vamos a borrar esto y acá abajo tenemos una representación de lo que ocuparía en bits un valor un tipo
de dato de este decimal si es decir ocupa de 1 a 9 dígitos ocupa 5 bits.
De 10 a 19 dígitos ocupa 9 bits de 22:28 13 bits y de 29 a 38 17 bits.