Transcript
  • 7/26/2019 Clase 04 Creacion de Tablas

    1/8

    ISEP_IARO SQL SERVER 2008

    LIC. MNDEZ NIZAMA POCHO JOHN 1

    CREACIN DE TABLAS

    CREACIN DE TABLAS PARA LA BASE DE DATOS

    Primero debemos verificar que la base de datos donde crearemos las tablas esta

    en uso o seleccionada, para verificarlo a la izquierda del botn ejecutar, hay una

    caja de texto donde aparece la base de datos seleccionada, la siguiente figura

    muestra el nombre de la base de datos.

    Tipos de Datos de SQL Server 2000

    S! Server brinda una serie de tipos de datos para almacenar la

    informacin, la correcta seleccin del tipo de dato es simplemente una

    cuestin de determinar qu" valores desea almacenar, como por ejemplo

    car#cter, enteros, binario, fechas, etc. !os siguientes objetos tienen tipos de

    datos$

    %olumnas de tablas y vistas.

    Par#metros de procedimientos

    almacenados. &ariables.

    'unciones de (ransact)S! que devuelve uno o m#s valores de datos de un

    tipo de datos espec*fico.

    Procedimientos almacenados que devuelven un cdigo, que siempre es

    de tipo integer.

  • 7/26/2019 Clase 04 Creacion de Tablas

    2/8

    +l asignar un tipo de datos a un objeto se definen cuatro atributos del objeto$

    !a clase de datos que contiene el objeto, por ejemplo, car#cter, entero o

    binario.

    !a longitud del valor almacenado o su tamao.

    !a precisin del n-mero slo tipos de datos num"ricos/.

    !a precisin es el n-mero de d*gitos que puede contener el n-mero. Por

    ejempo, un objeto !m"int puede contener hasta 0 d*gitos, con lo que

    tiene una precisin de 0.

    !a escala del n-mero slo tipos de datos num"ricos/.

    !a escala es el m#ximo n-mero de d*gitos a la derecha del separador

    decimal. Por ejempo, un objeto int no puede aceptar un separador

    decimal y tiene una escala de . 2n objeto mone# puede tener hasta 3

    d*gitos a la derecha del separador decimal y tiene una escala de 3.

    Si un objeto se define como mone#, puede contener hasta 14 d*gitos y 3

    de ellos pueden estar a la derecha del decimal. 5l objeto usa 6 bytes para

    almacenar los datos. Por tanto, el tipo de datos mone# tiene una

    precisin de 14, una escala de 3 y una longitud de 6.

  • 7/26/2019 Clase 04 Creacion de Tablas

    3/8

    TABLA QUE ESPECIFICA LOS TIPOS DE DATOS EN SQL SERVER

    C"tegor$" De!%rip%i&n Tipo 'e De!%rip%i&n

    7inario

    +lmacenan cadenas debits. !a data consiste de

    n-meros hexadecimales.Por ejemplo el decimal830 es '0 enhexadecimal.

    binary!a data debe tener una longitud fija hasta 6 97/.

    varbinary!os datos pueden variar en el n-mero de d*gitoshexadecimales hasta 6 97/.

    image!a data puede tener una longitud variable y exceder los69b.

    %ar#cter

    %onsisten de unacombinacin de letras,s*mbolos y n-meros. Porejemplo lascombinaciones :;ohn486:y :744nh j?;:.

    char!os datos deben tener una longitud fija @asta 6 97/.

    varchar!a data puede variar en el n-mero de caracteres @asta697./

    text !os datos pueden ser caracteres+S%AA que excedan los 6 97.

    'echa y@ora

    %onsistenencombinaciones v#lidas deestos datos.Bo puede separar en tiposdistintos el almacenamientode slo fechas o slo horas.

    Catetime'echas en el rango 1 5ne1D0E hasta el E1 Cic 4444 Se requiere 6 bytes porvalor/.

    smalldatetime'echas en el rango 1 5ne 14 hasta F ;un 8D4 Serequiere requires 3 bytes por valor/.

    Cecimal

    %onsisten en informacinque almacena informacinsignificativa despu"s del

    punto decimal. decimal

    !os datos pueden tener hasta E6 d*gitos, todos los cualepodr*an estar a la derecha del punto decimal. 5ste tipo ddato guarda un valor exacto del n-mero y no un

    aproximacin.

    numericPara S! Server, el tipo de dato numeric es equivalenteal tipo de datos decimal.

    Punto'lotante

    B-meros aproximadosPunto flotante/.

    floatCatos en el rango de 1.D45 GE6 hasta 1.D45 G E6.

    realCatos en el rango de E.35 GE6 hasta E.35 G E6.

    5nteros

    %onsiste en informacin

    num"rica positiva onegativa como por ejemplo

    H0, y 80.bigint

    Catos en el rango de 8IFE H

    488EED8EF603DD066/ hasta8IFEH1

    488EED8EF603DD06D/. Se requieren de 6 bytes paraalmacenar estos valores.

    int

    Catos en el rango de )8,13D,36E,F36 hasta8,13D,36E,F3D. Se requieren de3 bytes para almacenar estos valores.

  • 7/26/2019 Clase 04 Creacion de Tablas

    4/8

    C"tegor$" De!%rip%i&n Tipo 'e De!%rip%i&n

    smallint

    Catos en el rango de HE8,DF6 hasta E8,DFD. Serequieren 8 bytes por cada valor de este tipo.

    tinyint Catos entre y 800, se requiere de 1 byte.

    Jonetario

    %antidades monetariaspositivas o negativas.

    money

    Catos monetarios entre H488,EED,8E,F60,3DD.066 yG488,EED,8E,F60,3DD.06DSe requieren 6 bytes por valor/.

    smallmoney

    Catos monetarios entre H813,D36.EF36 y 813,D36.EF3DSe requieren de 3 bytes por valor/.

    5speciales

    %onsisten en informacinque no recae en ninguna delas categor*asanteriormentemencionadas.

    bit

    Catos que consisten de 1 o . 5mplear este tipo de datopara representar (K25 o '+!S5 L5S o BM.

    cursor

    5ste tipo de dato es empleado por variables oprocedimientos almacenados que emplean par#metrosM2(P2( referenciados a un cursor.

    timestamp

    5ste tipo de dato es empleado para indicar la actividadque ocurre sobre una fila. !a secuencia de este n-merose incrementa en formato binario.

    uniqueidentifier

    %onsiste en un n-mero hexadecimal que especifica unglobally unique identifierN2AC/, es -til cuando se deseaasegurar la unicidad de una fila entre muchas otras.

    S!Ovariant+lmacena varios tipos de datos, a excepcin de textntext, timestamp, image y sqlOvariant.

    table

    +lmacena un resultado de una consulta para su posteriorprocesamiento. Se puede emplear para definir variableslocales de tipo table o para retornar los valores devueltospor una funcin del usuario.

    2nicode+l emplear este tipo dedatos se puede almacenar

    ncharCatos con longitud fija, hasta3 caracteres 2nicode.

  • 7/26/2019 Clase 04 Creacion de Tablas

    5/8

    r ejemplo: Para los datos de una persona podemos especifcar que el registro de su nombre es

    ISEP_IARO SQL SERVER 2008

    0LIC. MNDEZ NIZAMA POCHO JOHN

    C"tegor$" De!%rip%i&n Tipo 'e De!%rip%i&nsobre una columna valores

    que incluyan este conjuntode caracteres. @ay que

    recordar que los datos2nicode emplean dos bytes

    por cada car#cter arepresentar.

    nvarcharCatos que pueden variar, hasta3 caracteres 2nicode.

    ntext Catos que exceden los 3 caracteres 2nicode.

    INSTR(CCIN CREATE TABLE

    CREATE TABLE nom)re*t")"+

    Nom)re*%o,mn" - tipo*'"to- N(LL I NOT N(LL / 0Nom)re*%o,mn" 1 tipo*'"to1 N(LL I NOT N(LL / 0

    Nom)re*%o,mn"2 tipo*'"to2 N(LL I NOT N(LL / 0

    . . . )

    ESPECI3ICACIN DE N(LL O NOT N(LL

    N(LL4 2na columna con la propiedad B2!!, indica que el valor a ingresar enesa columna es opcional BM es un dato obligatorio/.

    NOT N(LL4 Si la columna cuenta con la propiedad BM( B2!!, el ingreso deun valor en dicha columna es obligatorio.

  • 7/26/2019 Clase 04 Creacion de Tablas

    6/8

    E$ERCICIOS DE APLICACI%N

    EJERCICIO N5 6-

    Para seleccionar la base de datos hacemos uso del comando 2S5, en el editor

    de cdigo ingresamos lo siguiente$

    (SE 7ent"!16-1

    L verifique que la base de datos ha sido puesta en uso.

    EJERCICIO N5 61

    Cre"%i&n 'e " t")" C,r!o.

    P"r" e!to ingre!"remo! "! !ig,iente! $ne"! 'e %&'igo en e e'itor 'e%&'igo4

    (SE 7ent"!16-1goCREATE TABLE Ciente+

    IDCiente CHAR+89 NOT N(LL0Nom)re 7ARCHAR+:69 NOT N(LL0Dire%%ion 7ARCHAR+869 NOT N(LL0Tee;ono CHAR+

  • 7/26/2019 Clase 04 Creacion de Tablas

    7/8

    7="!e " in!t"nt>ne" 'e p"nt""4

  • 7/26/2019 Clase 04 Creacion de Tablas

    8/8

    ACTIVIDADES:

    Crear las s#&'#entes tablas:Pro(')to*

    Fa)t'ra*Detalles*

    SE?(NDA 3ORMA4

    P"r" e!to ingre!"remo! "! !ig,iente! $ne"! 'e %&'igo en e e'itor 'e%&'igo4

    !p*@ep Ciente

    5n la ficha resultado observamos lo siguiente$