Welcome to Sign in | Help

Re: Data Types in SQL Server 2005

  •  10-07-2006, 6:56 PM

    Re: Data Types in SQL Server 2005

    Tipuri de date caracter sunt: char,varchar,nchar,nvarchar, text, ntext.

    • char si nchar sunt de dimensiune fixa
    • varchar si nvarchar sunt de dimensiune variabila
    • nchar si nvarchar sunt folosite pentru stocarea caracterelor UNICODE, fiecare caracter ocupand 2 octeti (spre deosebire de char si varchar unde fiecare caracter ocupa 1 octet).
    • un tip de date varchar ocupa nr de caractere + 2 octeti.
    • pot fi folosite specificand lungimea ca de exemplu char(8) - 8 octeti vor fi ocupati etc. Daca nu este specificata lungimea, implicit lungimea sirului de caractere va fi 1. Pentru operatii ce folosesc functiile CAST si CONVERT, daca lungimea nu este specificata, implicit se va folosi valoarea 30 ca lungime.
    • in SQL Server 2005 un sir de caractere poate ocupa maxim 2^31-1 octeti. Pentru aceasta dimensiune se foloseste cuvantul cheie MAX - de exemplu varchar(MAX).
    • un tip special este sysname folosit pentru referirea numelor obiectelor unei baze de date. Tipul sysname este echivalent cu nvarchar(128).
    • In locul tipurilor de date text si ntext este recomandata folosirea varchar(MAX),nvarchar(MAX).

    Exemplul 1:

    DECLARE @v1 AS varchar
    DECLARE @v2 AS char
    SET @v1 = '0123'
    SET @v2 = '2345'

    -- Output 0,2
    SELECT @v1,@v2

    -- Output 1,1
    SELECT DATALENGTH(@v1), DATALENGTH(@v1);

    Exemplul 2:

    DECLARE @v1 AS varchar(40);
    SET @v1 = '0123456789012345678901234567890123456789'
    -- Output  012345678901234567890123456789
    SELECT CAST(@v1 AS varchar);

    -- Output 40 30
    SELECT DATALENGTH(@v1) AS 'Lungime @v1',
     DATALENGTH(CAST(@v1 AS varchar)) AS 'Lungime conversie';

     


    Cristian Andrei Lefter, SQL Server MVP
    MCT, MCSA, MCDBA, MCAD, MCSD .NET,
    MCTS, MCITP - Database Administrator SQL Server 2005
    http://sqlserver.ro
View Complete Thread
Powered by Community Server (Commercial Edition), by Telligent Systems