

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 di tabelle, database e colonne
<a name="tables-databases-columns-names"></a>

Utilizza questi suggerimenti per la denominazione di colonne, tabelle e database in .

## Requisiti database, tabella e colonne
<a name="tables-databases-columns-names-requirements"></a>
+ I caratteri consentiti per i nomi di database, tabella e colonne AWS Glue devono essere una stringa UTF-8 e devono essere lettere minuscole. Tieni presente che Athena riduce automaticamente tutti i nomi maiuscoli nelle query DDL quando crea database, tabelle o colonne. key Stringa UTF-8, non inferiore a 1 o superiore a 128 byte di lunghezza.
+ Attualmente è possibile inserire spazi iniziali all’inizio dei nomi. Poiché questi spazi iniziali possono essere difficili da rilevare e possono causare problemi di usabilità dopo la creazione, evitate di creare inavvertitamente nomi di oggetti con spazi iniziali.
+ Se si utilizza un [AWS::Glue::Database](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-database.html) CloudFormation modello per creare un AWS Glue database e non si specifica un nome di database, genera AWS Glue automaticamente un nome di database nel formato *resource\$1name–random\$1string* non compatibile con Athena.
+ È possibile utilizzare AWS Glue Catalog Manager per rinominare le colonne, ma non i nomi delle tabelle o dei database. Per ovviare a questa limitazione, è necessario utilizzare una definizione del vecchio database per creare un database con il nuovo nome. Quindi si utilizzano le definizioni delle tabelle del vecchio database per ricreare le tabelle nel nuovo database. Per fare ciò, puoi usare AWS CLI o AWS Glue SDK. Per le fasi, consulta [Utilizzare il AWS CLI per ricreare un AWS Glue database e le relative tabelle](glue-recreate-db-and-tables-cli.md).

## Utilizzare lettere minuscole per i nomi delle tabelle e delle colonne in Athena
<a name="table-names-and-table-column-names-in-ate-must-be-lowercase"></a>

Athena accetta maiuscole e minuscole nelle query DDL e DML, ma scrive i nomi in minuscolo quando esegue la query. Per questo motivo, evitare di usare maiuscole e minuscole per i nomi delle tabelle o delle colonne e non fare affidamento sul solo contenitore di Athena per distinguere tali nomi. Ad esempio, se utilizzi un'istruzione DDL per creare una colonna denominata `Castle`, la colonna creata verrà scritta in minuscolo come `castle`. Se si specifica quindi il nome della colonna in una query DML come `Castle` o `CASTLE`, Athena scriverà in minuscolo il nome per l'esecuzione della query, ma mostrerà l'intestazione della colonna utilizzando la struttura scelta nella query.

I nomi di database, tabelle e colonne devono contenere un massimo di 255 caratteri.

## Nomi che iniziano con un trattino basso
<a name="names-that-begin-with-an-underscore"></a>

Quando crei tabelle, utilizza i backtick per racchiudere i nomi di tabelle, viste o colonne che iniziano con un trattino basso. Esempio:

```
CREATE EXTERNAL TABLE IF NOT EXISTS `_myunderscoretable`(
  `_id` string, `_index` string)
LOCATION 's3://amzn-s3-demo-bucket/'
```

## Nomi di tabelle, viste o colonne che iniziano con i numeri
<a name="table-names-that-include-numbers"></a>

Quando si eseguono le query `SELECT`, `CTAS` o `VIEW` inserire le virgolette attorno a identificatori come nomi di tabelle, viste o colonne che iniziano con una cifra. Esempio:

```
CREATE OR REPLACE VIEW "123view" AS
SELECT "123columnone", "123columntwo"
FROM "234table"
```

## Nomi di colonna e tipi complessi
<a name="tables-databases-columns-names-complex-types"></a>

Per i tipi complessi, nei nomi delle colonne sono consentiti solo caratteri alfanumerici, il trattino basso (`_`) e il punto (`.`). Per creare una tabella e una mappatura per le chiavi con caratteri limitati, è possibile utilizzare un'istruzione DDL personalizzata. *Per ulteriori informazioni, consulta l'articolo [Creare tabelle in Amazon Athena da JSON annidato e mappature usando JSONSer De](https://aws.amazon.com/blogs/big-data/create-tables-in-amazon-athena-from-nested-json-and-mappings-using-jsonserde/) nel Big Data Blog.AWS *

## Parole riservate
<a name="tables-databases-columns-names-reserved-words"></a>

Alcune parole riservate in Athena devono avere il carattere escape. Per impostare il carattere escape di parole chiave riservate in istruzioni DDL, occorre racchiuderle tra apici retroversi (`). Per impostare il carattere escape di parole chiave riservate in istruzioni SQL `SELECT` e nelle query su [viste](views.md), occorre racchiuderle tra doppie virgolette (''). 

Per ulteriori informazioni, consulta [Impostare il carattere escape di parole chiave riservate nelle query](reserved-words.md).

## Altre risorse
<a name="tables-databases-columns-names-additional-resources"></a>

Per la sintassi completa per la creazione di database e tabelle, vedere le pagine seguenti.
+ [CREATE DATABASE](create-database.md)
+ [CREATE TABLE](create-table.md)

[https://docs.aws.amazon.com/glue/latest/dg/aws-glue-api-catalog-tables.html](https://docs.aws.amazon.com/glue/latest/dg/aws-glue-api-catalog-tables.html)