

 Amazon Redshift ne prendra plus en charge la création de nouveaux Python à UDFs partir du patch 198. UDFs Le Python existant continuera de fonctionner jusqu'au 30 juin 2026. Pour plus d’informations, consultez le [ billet de blog ](https://aws.amazon.com/blogs/big-data/amazon-redshift-python-user-defined-functions-will-reach-end-of-support-after-june-30-2026/). 

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

# STL\$1DDLTEXT
<a name="r_STL_DDLTEXT"></a>

Capture les instructions DDL suivantes qui ont été exécutées sur le système.

Ces instructions DDL incluent les requêtes et les objets suivants : 
+ CREATE SCHEMA, TABLE, VIEW
+ DROP SCHEMA, TABLE, VIEW
+ ALTER SCHEMA, TABLE

Consultez aussi [STL\$1QUERYTEXT](r_STL_QUERYTEXT.md), [STL\$1UTILITYTEXT](r_STL_UTILITYTEXT.md) et [SVL\$1STATEMENTTEXT](r_SVL_STATEMENTTEXT.md). Ces vues fournissent une chronologie des commandes SQL qui sont exécutées sur le système ; cet historique est utile pour le dépannage et la création d’un journal d’activité d’audit de toutes les activités du système.

Utilisez les colonnes STARTTIME et ENDTIME pour découvrir quelles instructions ont été enregistrées pendant une période donnée. Les longs blocs de texte SQL sont divisés en lignes de 200 caractères de long ; la colonne SEQUENCE identifie les fragments de texte qui appartiennent à une seule instruction.

STL\$1DDLTEXT est visible par tous les utilisateurs. Les super-utilisateurs peuvent voir toutes les lignes, tandis que les utilisateurs standard peuvent voir uniquement leurs propres données. Pour plus d’informations, consultez [Visibilité des données dans les tables et vues système](cm_chap_system-tables.md#c_visibility-of-data).

Tout ou partie des données de cette table sont également disponibles dans la vue de surveillance SYS [SYS\$1QUERY\$1HISTORY](SYS_QUERY_HISTORY.md). Les données de la vue de surveillance SYS sont formatées pour être plus faciles à utiliser et à comprendre. Nous vous recommandons d’utiliser la vue de surveillance SYS pour vos requêtes.

## Colonnes de la table
<a name="r_STL_DDLTEXT-table-columns2"></a>

[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/redshift/latest/dg/r_STL_DDLTEXT.html)

## Exemples de requêtes
<a name="r_STL_DDLTEXT-sample-queries2"></a>

La requête suivante renvoie des enregistrements qui incluent des instructions DDL précédemment exécutées.

```
select xid, starttime, sequence, substring(text,1,40) as text
from stl_ddltext order by xid desc, sequence;
```

Voici un exemple de sortie montrant quatre instructions CREATE TABLE. Les instructions DDL apparaissent dans la colonne `text`, tronquée à des fins de lisibilité.

```
 xid  |         starttime          | sequence |                   text
------+----------------------------+----------+------------------------------------------
 1806 | 2013-10-23 00:11:14.709851 |        0 | CREATE TABLE supplier ( s_suppkey int4 N
 1806 | 2013-10-23 00:11:14.709851 |        1 |  s_comment varchar(101) NOT NULL )
 1805 | 2013-10-23 00:11:14.496153 |        0 | CREATE TABLE region ( r_regionkey int4 N
 1804 | 2013-10-23 00:11:14.285986 |        0 | CREATE TABLE partsupp ( ps_partkey int8
 1803 | 2013-10-23 00:11:14.056901 |        0 | CREATE TABLE part ( p_partkey int8 NOT N
 1803 | 2013-10-23 00:11:14.056901 |        1 | ner char(10) NOT NULL , p_retailprice nu
(6 rows)
```

### Reconstruction de SQL stocké
<a name="r_STL_DDLTEXT-reconstruct-sql"></a>

L’instruction SQL suivante répertorie les lignes stockées dans la colonne `text` STL\$1DDLTEXT. Les lignes sont classées par `xid` et `sequence`. Si le code SQL d’origine était plus long que 200 caractères, STL\$1DDLTEXT peut contenir plusieurs lignes par `sequence`. 

```
SELECT xid, sequence, LISTAGG(CASE WHEN LEN(RTRIM(text)) = 0 THEN text ELSE RTRIM(text) END, '') WITHIN GROUP (ORDER BY sequence) as query_statement 
FROM stl_ddltext GROUP BY xid, sequence ORDER BY xid, sequence;
```

```
xid     |  sequence | query_statement
--------+-----------+-----------------
7886671    0          create external schema schema_spectrum_uddh\nfrom data catalog\ndatabase 'spectrum_db_uddh'\niam_role ''\ncreate external database if not exists;	
7886752    0          CREATE EXTERNAL TABLE schema_spectrum_uddh.soccer_league\n(\n  league_rank smallint,\n  prev_rank   smallint,\n  club_name   varchar(15),\n  league_name varchar(20),\n  league_off  decimal(6,2),\n  le	
7886752    1          ague_def  decimal(6,2),\n  league_spi  decimal(6,2),\n  league_nspi smallint\n)\nROW FORMAT DELIMITED \n    FIELDS TERMINATED BY ',' \n    LINES TERMINATED BY '\\n\\l'\nstored as textfile\nLOCATION 's	
7886752    2          3://mybucket-spectrum-uddh/'\ntable properties ('skip.header.line.count'='1');
...
```

Pour reconstruire le code SQL stocké dans la colonne `text` de STL\$1DDLTEXT, exécutez l’instruction SQL suivante. Il réunit les instructions DDL d’un ou de plusieurs segments dans la colonne `text`. Avant d’exécuter le SQL reconstruit, remplacez tout caractère spécial (`\n`) par un saut de ligne dans votre client SQL. Les résultats de l’instruction SELECT suivante rassemblent trois lignes dans l’ordre de la séquence pour reconstituer le code SQL dans le champ `query_statement`. 

```
SELECT LISTAGG(CASE WHEN LEN(RTRIM(text)) = 0 THEN text ELSE RTRIM(text) END) WITHIN GROUP (ORDER BY sequence) as query_statement
FROM stl_ddltext GROUP BY xid, endtime order by xid, endtime;
```

```
query_statement
--------------
create external schema schema_spectrum_uddh\nfrom data catalog\ndatabase 'spectrum_db_uddh'\niam_role ''\ncreate external database if not exists;	
CREATE EXTERNAL TABLE schema_spectrum_uddh.soccer_league\n(\n  league_rank smallint,\n  prev_rank   smallint,\n  club_name   varchar(15),\n  league_name varchar(20),\n  league_off  decimal(6,2),\n  league_def  decimal(6,2),\n  league_spi  decimal(6,2),\n  league_nspi smallint\n)\nROW FORMAT DELIMITED \n    FIELDS TERMINATED BY ',' \n    LINES TERMINATED BY '\\n\\l'\nstored as textfile\nLOCATION 's3://mybucket-spectrum-uddh/'\ntable properties ('skip.header.line.count'='1');
```