

 Amazon Redshift ne prendra plus en charge l'utilisation des UDF Python après le 30 juin 2026. Nous allons commencer à l'appliquer par étapes. Pour plus d'informations sur les détails de la fin de vie de Python et des options de migration, consultez [ le billet de ](https://aws.amazon.com/blogs/big-data/amazon-redshift-python-user-defined-functions-will-reach-end-of-support-after-june-30-2026/) blog publié le 30 juin 2025. 

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.

# Fonction UPPER\_ATTRIBUTE\_NAMES
<a name="r_upper_attribute_names"></a>

Convertit tous les noms d’attributs applicables dans une valeur SUPER en majuscules, en utilisant la même routine de conversion majuscules/minuscules que [Fonction UPPER](r_UPPER.md). UPPER\_ATTRIBUTE\_NAMES prend en charge les caractères UTF-8 multioctets, jusqu'à un maximum de quatre octets par caractère. 

 Pour convertir les noms d’attributs SUPER en minuscules, utilisez [Fonction LOWER\_ATTRIBUTE\_NAMES](r_lower_attribute_names.md). 

## Syntaxe
<a name="r_upper_attribute_names-synopsis"></a>

```
UPPER_ATTRIBUTE_NAMES( super_expression )
```

## Arguments
<a name="r_upper_attribute_names-arguments"></a>

*super\_expression*  
Une expression SUPER.

## Type de retour
<a name="r_upper_attribute_names-return-type"></a>

`SUPER`

## Exemples
<a name="r_upper_attribute_names_examples"></a>

**Conversion des noms d’attributs SUPER en majuscules**  
L’exemple suivant utilise UPPER\_ATTRIBUTE\_NAMES pour convertir les noms d’attribut de toutes les valeurs SUPER d’une table.

```
-- Create a table and insert several SUPER values.
CREATE TABLE t (i INT, s SUPER);

INSERT INTO t VALUES
  (1, NULL), 
  (2, 'a'::SUPER),
  (3, JSON_PARSE('{"AttributeName": "b"}')),
  (4, JSON_PARSE(
     '[{"Subobject": {"c": "c"},
        "Subarray": [{"d": "d"}, "e"]
      }]'));

-- Convert all attribute names to uppercase.
UPDATE t SET s = UPPER_ATTRIBUTE_NAMES(s);

SELECT i, s FROM t ORDER BY i;

 i |                        s
---+--------------------------------------------------
 1 | NULL
 2 | "a"
 3 | {"ATTRIBUTENAME":"B"}
 4 | [{"SUBOBJECT":{"C":"c"},"SUBARRAY":[{"D":"d"}, "e"]}]
```

Observez le fonctionnement de UPPER\_ATTRIBUTE\_NAMES.
+  Les valeurs NULL et les valeurs scalaires SUPER telles que `"a"` restent inchangées. 
+  Dans un objet SUPER, tous les noms d’attributs sont remplacés par des majuscules, mais les valeurs d’attributs tels que `"b"` restent inchangés. 
+  UPPER\_ATTRIBUTE\_NAMES s’applique de manière récursive à tout objet SUPER imbriqué dans un tableau SUPER ou dans un autre objet. 

**Utilisation de UPPER\_ATTRIBUTE\_NAMES sur un objet SUPER avec des noms d’attributs dupliqués**  
Si un objet SUPER contient des attributs dont les noms ne diffèrent que dans leur cas, UPPER\_ATTRIBUTE\_NAMES générera une erreur. Prenez l’exemple de code suivant.

```
SELECT UPPER_ATTRIBUTE_NAMES(JSON_PARSE('{"A": "A", "a": "a"}'));      

error:   Invalid input
code:    8001
context: SUPER value has duplicate attributes after case conversion.
```