

 Amazon Redshift non supporterà più la creazione di nuove UDF Python a partire dalla Patch 198. Le UDF Python esistenti continueranno a funzionare fino al 30 giugno 2026. Per ulteriori informazioni, consulta il [post del blog](https://aws.amazon.com/blogs/big-data/amazon-redshift-python-user-defined-functions-will-reach-end-of-support-after-june-30-2026/). 

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

# Nomi e identificatori
<a name="r_names"></a>

I nomi identificano oggetti di database, comprese tabelle e colonne, nonché utenti e password. È possibile usare i termini *nome* e *identificatore* in modo intercambiabile. Ci sono due tipi di identificatori, gli identificatori standard e gli identificatori delimitati o racchiusi tra virgolette. Gli identificatori devono essere composti solo da caratteri UTF-8 stampabili. Le lettere ASCII negli identificatori standard e delimitati fanno distinzione tra maiuscole e minuscole e sono scritte in minuscolo nel database. Nei risultati delle query, i nomi delle colonne vengono restituiti in lettere minuscole per impostazione predefinita. Per restituire i nomi delle colonne in lettere maiuscole, impostare il parametro di configurazione [describe\_field\_name\_in\_uppercase](r_describe_field_name_in_uppercase.md) su **true**.

## Identificatori standard
<a name="r_names-standard-identifiers"></a>

Gli identificatori SQL standard rispettano un insieme di regole ed è necessario che: 
+ Inizia con un carattere alfabetico ASCII a byte singolo o un carattere di sottolineatura oppure un carattere UTF-8 multibyte lungo da due a quattro byte.
+ I caratteri successivi possono essere caratteri alfanumerici ASCII a byte singolo, caratteri di sottolineatura o simboli del dollaro oppure caratteri multibyte lunghi da due a quattro byte. UTF-8 
+ Abbiano una lunghezza compresa tra 1 e 127 byte, senza comprendere le virgolette per gli identificatori delimitati. 
+ Non contengano virgolette e spazi. 
+ Non siano una parola chiave di SQL riservata.

## Identificatori delimitati
<a name="r_names-delimited-identifiers"></a>

Gli identificatori delimitati (conosciuti anche come identificatori tra virgolette) iniziano e terminano con le virgolette doppie ("). Se vedi un identificatore delimitato, è necessario usare le virgolette doppie per ogni riferimento a quell'oggetto. L'identificatore può contenere qualsiasi carattere stampabile standard UTF-8 diverso dalle virgolette doppie stesse. Pertanto, è possibile creare nomi di colonna o tabella che comprendono caratteri altrimenti non ammessi, come spazi o il simbolo di percentuale.

Le lettere ASCII negli identificatori delimitati fanno distinzione tra maiuscole e minuscole e sono scritte in minuscolo. Per usare una virgoletta doppia in una stringa, è necessario farla precedere da un altro carattere di virgoletta doppia. 

## Case-sensitive identificatori
<a name="r_names-case-sensitive-identifiers"></a>

Case-sensitive gli identificatori (noti anche come identificatori misti) possono contenere sia lettere maiuscole che minuscole. Per utilizzare gli identificatori con distinzione tra maiuscole e minuscole, è possibile impostare la configurazione da `enable_case_sensitive_identifier` a `true`. È possibile impostare questa configurazione per il cluster o per una sessione. Per ulteriori informazioni, consulta [Valori di parametro predefiniti](https://docs.aws.amazon.com/redshift/latest/mgmt/working-with-parameter-groups.html#default-param-group-values) nella *Guida alla gestione di Amazon Redshift* e [enable\_case\_sensitive\_identifier](r_enable_case_sensitive_identifier.md). 

## Nomi di colonna di sistema
<a name="r_names-system-column-names"></a>

Non è possibile usare i seguenti i nomi delle colonne di sistema PostgreSQL come nomi delle colonne definite dall'utente. Per ulteriori informazioni, consulta [https://www.postgresql.org/docs/8.0/static/ddl-system-columns.html](https://www.postgresql.org/docs/8.0/static/ddl-system-columns.html).
+ `oid`
+ `tableoid`
+ `xmin`
+ `cmin`
+ `xmax`
+ `cmax`
+ `ctid`

## Esempi
<a name="r_names-examples"></a>

Questa tabella mostra esempi di identificatori delimitati, l'output risultante e una discussione: 


| Sintassi  | Risultato  | Discussione  | 
| --- | --- | --- | 
| "group"  | gruppo  | GROUP è una parola riservata, quindi il suo uso all'interno di un identificatore necessita delle virgolette doppie.  | 
| """WHERE"""  | "dove"  | Anche WHERE è una parola riservata. Per includere le virgolette nella stringa, eseguire l'escape per ciascuna virgoletta utilizzando virgolette supplementari.  | 
| "This name"  | this name  | Le doppie virgolette sono necessarie per conservare lo spazio.  | 
| "This ""IS IT"""  | this "is it"  | Perché diventino parte del nome, è necessario che ciascuna delle virgolette che circonda IS IT sia preceduta da altre virgolette.  | 

Per creare una tabella chiamata group con una colonna di nome this "is it": 

```
create table "group" (
"This ""IS IT""" char(10));
```

Le seguenti query restituiscono lo stesso risultato: 

```
select "This ""IS IT"""
from "group";

this "is it"
--------------
(0 rows)
```

```
select "this ""is it"""
from "group";

this "is it"
--------------
(0 rows)
```

Anche la seguente sintassi `table.column` completa restituisce lo stesso risultato: 

```
select "group"."this ""is it"""
from "group";

this "is it"
--------------
(0 rows)
```

Il seguente comando CREATE TABLE crea una tabella con una barra nel nome di una colonna: 

```
create table if not exists city_slash_id(
                  "city/id" integer not null,
                  state char(2) not null);
```