Creare un alias del tipo di dati definito dall'utenteCreate a User-Defined Data Type Alias

In questo argomento si illustra come creare un nuovo alias del tipo di dati definito dall'utente in SQL Server 2017SQL Server 2017 utilizzando SQL Server Management StudioSQL Server Management Studio o Transact-SQLTransact-SQL.This topic describes how to create a new user-defined data type alias in SQL Server 2017SQL Server 2017 by using SQL Server Management StudioSQL Server Management Studio or Transact-SQLTransact-SQL.

Contenuto dell'argomentoIn This Topic

Prima di iniziare Before You Begin

Limitazioni e restrizioni Limitations and Restrictions

  • Il nome di un alias del tipo di dati definito dall'utente deve essere conforme alle regole per gli identificatori.The name of a user-defined data type alias must comply with the rules for identifiers.

Sicurezza Security

Autorizzazioni Permissions

È richiesta l'autorizzazione CREATE TYPE nel database corrente e l'autorizzazione ALTER per schema_name.Requires CREATE TYPE permission in the current database and ALTER permission on schema_name. Se schema_name viene omesso, vengono applicate le regole predefinite per la risoluzione dei nomi per determinare lo schema dell'utente corrente.If schema_name is not specified, the default name resolution rules for determining the schema for the current user apply.

Utilizzo di SQL Server Management Studio Using SQL Server Management Studio

Per creare un tipo di dati definito dall'utenteTo create a user-defined data type

  1. In Esplora oggetti espandere Database, espandere un database, Programmabilitàe Tipi, fare clic con il pulsante destro del mouse su Tipi di dati definiti dall'utente, quindi scegliere Nuovo tipo di dati definito dall'utente.In Object Explorer, expand Databases, expand a database, expand Programmability, expand Types, right-click User-Defined Data Types, and then click New User-Defined Data Type.

    Consenti valori NullAllow NULLs
    Specificare se dal tipo di dati definito dall'utente possono essere accettati valori Null.Specify whether the user-defined data type can accept NULL values. Il supporto di valori Null di un tipo di dati definito dall'utente esistente non può essere modificato.The nullability of an existing user-defined data type is not editable.

    Tipo di datiData type
    Selezionare il tipo di dati di base dalla casella di riepilogo.Select the base data type from the list box. In questa casella vengono visualizzati tutti i tipi di dati, ad eccezione di geography, geometry, hierarchyid, sysname, timestamp e xml .The list box displays all data types except for the geography, geometry, hierarchyid, sysname, timestamp , and xml data types. Il tipo di dati di un tipo di dati definito dall'utente esistente non può essere modificato.The data type of an existing user-defined data type is not editable.

    Valore predefinitoDefault
    Facoltativamente, selezionare una regola o un valore predefinito da associare all'alias del tipo di dati definito dall'utente.Optionally select a rule or a default to bind to the user-defined data type alias.

    Lunghezza/PrecisioneLength/Precision
    Consente di visualizzare la lunghezza o la precisione del tipo di dati.Displays the length or precision of the data type as applicable. L'opzioneLunghezza viene applicata ai tipi di dati carattere definiti dall'utente mentre Precisione solo ai tipi di dati numerici definiti dall'utente.Length applies to character-based user-defined data types; Precision applies only to numeric-based user-defined data types. L'etichetta varia a seconda del tipo di dati selezionato in precedenza.The label changes depending on the data type selected earlier. Se la lunghezza o la precisione del tipo di dati selezionato è fissa, la casella non è modificabile.This box is not editable if the length or precision of the selected data type is fixed.

    La lunghezza non viene visualizzata per tipi di dati nvarchar(max), varchar(max)o varbinary(max) .Length is not displayed for nvarchar(max), varchar(max), or varbinary(max) data types.

    NomeName
    Se si crea un nuovo alias del tipo di dati definito dall'utente, digitare un nome univoco da utilizzare nel database per rappresentare il tipo di dati definito dall'utente.If you are creating a new user-defined data type alias, type a unique name to be used across the database to represent the user-defined data type. Il numero massimo di caratteri deve corrispondere al tipo di dati del sistema sysname .The maximum number of characters must match the system sysname data type. Il nome di un alias del tipo di dati definito dall'utente esistente non può essere modificato.The name of an existing user-defined data type alias is not editable.

    RuleRule
    Facoltativamente, selezionare una regola da associare all'alias del tipo di dati definito dall'utente.Optionally select a rule to bind to the user-defined data type alias.

    ScalaScale
    Specificare il numero massimo di cifre decimali che è possibile archiviare a destra del separatore decimale.Specify the maximum number of decimal digits that can be stored to the right of the decimal point.

    SchemaSchema
    Consente di selezionare uno schema dall'elenco di tutti gli schemi disponibili per l'utente corrente.Select a schema from a list of all schemas available to the current user. La selezione predefinita corrisponde allo schema predefinito per l'utente corrente.The default selection is the default schema for the current user.

    ArchiviazioneStorage
    Consente di visualizzare la capacità di memorizzazione massima per l'alias del tipo di dati definito dall'utente.Displays the maximum storage size for the user-defined data type alias. Le dimensioni di archiviazione massime variano in base alla precisione.Maximum storage sizes vary, based on precision.

    1 – 91 – 9 55
    10 – 1910 – 19 99
    20 – 2820 – 28 1313
    29 – 3829 – 38 1717

    Per i tipi di dati nchar e nvarchar il valore di archiviazione è sempre il doppio del valore specificato in Lunghezza.For nchar and nvarchar data types, the storage value is always two times the value in Length.

    L'archiviazione non viene visualizzata per tipi di dati nvarchar(max), varchar(max)o varbinary(max) .Storage is not displayed for nvarchar(max), varchar(max), or varbinary(max) data types.

  2. Nella casella Schema della finestra di dialogo Nuovo tipo di dati definito dall'utente digitare lo schema proprietario per questo alias del tipo di dati oppure usare il pulsante sfoglia per selezionare lo schema.In the New User-defined Data Type dialog box, in the Schema box, type the schema to own this data type alias, or use the browse button to select the schema.

  3. Nella casella Nome digitare un nome per il nuovo alias del tipo di dati.In the Name box, type a name for the new data type alias.

  4. Nella casella Tipo di dati selezionare il tipo di dati sul quale sarà basato il nuovo alias del tipo di dati.In the Data type box, select the data type that the new data type alias will be based on.

  5. Compilare le caselle Lunghezza, Precisionee Scala se necessarie per il tipo di dati selezionato.Complete the Length, Precision, and Scale boxes if appropriate for that data type.

  6. Selezionare Consenti valori NULL se il nuovo alias del tipo di dati può consentire valori NULL.Check Allow NULLs if the new data type alias can permit NULL values.

  7. Nell'area Associazione compilare le caselle Valore predefinito o Regola per associare un valore predefinito o una regola al nuovo alias del tipo di dati.In the Binding area, complete the Default or Rule boxes if you want to bind a default or rule to the new data type alias. In SQL Server Management StudioSQL Server Management Studionon è possibile creare valori predefiniti e regole.Defaults and rules cannot be created in SQL Server Management StudioSQL Server Management Studio. Usare Transact-SQLTransact-SQL.Use Transact-SQLTransact-SQL. Esempi di codice per la creazione di valori predefiniti e di regole sono disponibili in Esplora modelli.Example code for creating defaults and rules are available in Template Explorer.

Utilizzo di Transact-SQL Using Transact-SQL

Per creare un alias del tipo di dati definito dall'utenteTo create a user-defined data type alias

  1. Connettersi al Motore di databaseDatabase Engine.Connect to the Motore di databaseDatabase Engine.

  2. Dalla barra Standard fare clic su Nuova query.From the Standard bar, click New Query.

  3. Copiare e incollare l'esempio seguente nella finestra Query, quindi fare clic su Esegui.Copy and paste the following example into the query window and click Execute. In questo esempio si crea un alias del tipo di dati basato sul tipo di dati di sistema varchar .This example creates a data type alias based on the system-supplied varchar data type. L'alias del tipo di dati ssn viene utilizzato per colonne contenenti numeri di previdenza sociale a 11 cifre (999-99-9999).The ssn data type alias is used for columns holding 11-digit social security numbers (999-99-9999). Questa colonna non può contenere valori NULL.The column cannot be NULL.

CREATE TYPE ssn  
FROM varchar(11) NOT NULL ;  

Vedere ancheSee Also

Identificatori del database Database Identifiers
CREATE TYPE (Transact-SQL) CREATE TYPE (Transact-SQL)