

 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à.

# PG\_TABLE\_DEF
<a name="r_PG_TABLE_DEF"></a>

Archivia le informazioni sulle colonne di tabella.

PG\_TABLE\_DEF restituisce solo le informazioni sulle tabelle visibili all'utente. Se PG\_TABLE\_DEF non restituisce i risultati previsti, verifica che il parametro [search\_path](r_search_path.md) sia impostato correttamente per includere gli schemi rilevanti.

Puoi usare [SVV\_TABLE\_INFO](r_SVV_TABLE_INFO.md) per visualizzare informazioni più complete su una tabella, incluse differenze di distribuzione dei dati, differenze di distribuzione delle chiavi, dimensioni della tabella e statistiche. 

## Colonne di tabella
<a name="r_PG_TABLE_DEF-table-columns2"></a>


| Nome della colonna  | Tipo di dati  | Description  | 
| --- | --- | --- | 
| schemaname | nome | Nome schema. | 
| tablename | nome | Nome tabella. | 
| column | nome  | Nome della colonna. | 
| tipo  | testo | Tipo di dati della colonna. | 
| encoding  | character(32)  | Codifica della colonna. | 
| distkey  | booleano | VERO se la colonna corrisponde alla chiave di distribuzione per la tabella. | 
| sortkey | intero  | Ordine della colonna nella chiave di ordinamento. Se la tabella usa una chiave di ordinamento composta, tutte le colonne che fanno parte della chiave di ordinamento hanno un valore positivo che indica la posizione della colonna nella chiave di ordinamento. Se la tabella usa una chiave di ordinamento con interlacciamento, ogni colonna che fa parte della chiave di ordinamento ha un valore alternativamente positivo o negativo, il cui valore assoluto indica la posizione della colonna nella chiave di ordinamento. Se il valore è 0, la colonna non fa parte di una chiave di ordinamento.  | 
| notnull | booleano  | True se la colonna ha un vincolo NOT NULL. | 

## Esempio
<a name="r_PG_TABLE_DEF-example2"></a>

L'esempio seguente mostra le colonne della chiave di ordinamento composta per la tabella LINEORDER\_COMPOUND.

```
select "column", type, encoding, distkey, sortkey, "notnull" 
from pg_table_def
where tablename = 'lineorder_compound' 
and sortkey <> 0;

column       | type    | encoding | distkey | sortkey | notnull
-------------+---------+----------+---------+---------+--------
lo_orderkey  | integer | delta32k | false   |       1 | true   
lo_custkey   | integer | none     | false   |       2 | true   
lo_partkey   | integer | none     | true    |       3 | true   
lo_suppkey   | integer | delta32k | false   |       4 | true   
lo_orderdate | integer | delta    | false   |       5 | true   
(5 rows)
```

 L'esempio seguente mostra le colonne della chiave di ordinamento con interfoliazione per la tabella LINEORDER\_INTERLEAVED.

```
select "column", type, encoding, distkey, sortkey, "notnull" 
from pg_table_def
where tablename = 'lineorder_interleaved' 
and sortkey <> 0;

column       | type    | encoding | distkey | sortkey | notnull
-------------+---------+----------+---------+---------+--------
lo_orderkey  | integer | delta32k | false   |      -1 | true   
lo_custkey   | integer | none     | false   |       2 | true   
lo_partkey   | integer | none     | true    |      -3 | true   
lo_suppkey   | integer | delta32k | false   |       4 | true   
lo_orderdate | integer | delta    | false   |      -5 | true   
(5 rows)
```

PG\_TABLE\_DEF restituisce solo le informazioni per le tabelle negli schemi che fanno parte del percorso di ricerca. Per ulteriori informazioni, consultare [search\_path](r_search_path.md).

Supponi, ad esempio, di creare un nuovo schema e una nuova tabella e quindi di eseguire una query su PG\_TABLE\_DEF.

```
create schema demo;
create table demo.demotable (one int);
select * from pg_table_def where tablename = 'demotable';

schemaname|tablename|column| type | encoding | distkey | sortkey | notnull 
----------+---------+------+------+----------+---------+---------+--------
```

La query non restituisce righe per la nuova tabella. Esamina l'impostazione di `search_path`.

```
show search_path;

  search_path
---------------
 $user, public
(1 row)
```

Aggiungi lo schema `demo` al percorso di ricerca ed esegui di nuovo la query.

```
set search_path to '$user', 'public', 'demo';

select * from pg_table_def where tablename = 'demotable';

schemaname| tablename |column|  type   | encoding |distkey|sortkey| notnull
----------+-----------+------+---------+----------+-------+-------+--------
demo      | demotable | one  | integer | none     | f     |     0 | f
(1 row)
```