

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.

# API d'une base de données
<a name="aws-glue-api-catalog-databases"></a>

L'API de base de données décrit les types de données d'une base de données et comprend l'API permettant de créer, supprimer, localiser, mettre à jour et répertorier des bases de données.

## Types de données
<a name="aws-glue-api-catalog-databases-objects"></a>
+ [Structure Database](#aws-glue-api-catalog-databases-Database)
+ [DatabaseInput structure](#aws-glue-api-catalog-databases-DatabaseInput)
+ [PrincipalPermissions structure](#aws-glue-api-catalog-databases-PrincipalPermissions)
+ [DataLakePrincipal structure](#aws-glue-api-catalog-databases-DataLakePrincipal)
+ [DatabaseIdentifier structure](#aws-glue-api-catalog-databases-DatabaseIdentifier)
+ [FederatedDatabase structure](#aws-glue-api-catalog-databases-FederatedDatabase)

## Structure Database
<a name="aws-glue-api-catalog-databases-Database"></a>

L'objet `Database` représente un groupement logique de tables pouvant résider dans un metastore Hive ou un SGBDR.

**Champs**
+ `Name` – *Obligatoire :* Chaîne UTF-8, d’une longueur comprise entre 1 et 255 octets, correspondant au [Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine).

  Nom de la base de données. Pour des raisons de compatibilité avec Hive, ce nom est converti en minuscules lors de son stockage.
+ `Description` – Chaîne de description, d’une longueur maximale de 2 048 octets, correspondant au [URI address multi-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-uri).

  Description de la base de données.
+ `LocationUri` – Identificateur de ressource uniforme (URI), d'une longueur comprise entre 1 et 1024 octets, correspondant au [URI address multi-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-uri).

  Emplacement de la base de données (par exemple, un chemin HDFS).
+ `Parameters` – Tableau de mappage de paires valeur-clé.

  Chaque clé est une chaîne de clé, d’une longueur comprise entre 1 et 255 octets, correspondant au [Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine).

  Chaque valeur est une chaîne UTF-8, d’une longueur maximale de 512 000 octets.

  Ces paires clé-valeur définissent les paramètres et les propriétés de la base de données.
+ `CreateTime` – Horodatage.

  Heure à laquelle la base de données de métadonnées a été créée dans le catalogue.
+ `CreateTableDefaultPermissions` : un tableau d’objets [PrincipalPermissions](#aws-glue-api-catalog-databases-PrincipalPermissions).

  Crée un ensemble d'autorisations par défaut sur le tableau pour les principaux. Utilisé par AWS Lake Formation. Non utilisé dans le cours normal des AWS Glue opérations.
+ `TargetDatabase` – Un objet [DatabaseIdentifier](#aws-glue-api-catalog-databases-DatabaseIdentifier).

  Structure `DatabaseIdentifier` qui décrit une base de données cible pour la liaison de ressources.
+ `CatalogId` – Chaîne d’ID de catalogue, d’une longueur comprise entre 1 et 255 octets, correspondant au [Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine).

  ID du catalogue de données dans lequel réside la base de données.
+ `FederatedDatabase` – Un objet [FederatedDatabase](#aws-glue-api-catalog-databases-FederatedDatabase).

  Une structure `FederatedDatabase` qui fait référence à une entité extérieure à AWS Glue Data Catalog.

## DatabaseInput structure
<a name="aws-glue-api-catalog-databases-DatabaseInput"></a>

Structure utilisée pour créer ou mettre à jour une base de données.

**Champs**
+ `Name` – *Obligatoire :* Chaîne UTF-8, d’une longueur comprise entre 1 et 255 octets, correspondant au [Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine).

  Nom de la base de données. Pour des raisons de compatibilité avec Hive, ce nom est converti en minuscules lors de son stockage.
+ `Description` – Chaîne de description, d’une longueur maximale de 2 048 octets, correspondant au [URI address multi-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-uri).

  Description de la base de données.
+ `LocationUri` – Identificateur de ressource uniforme (URI), d'une longueur comprise entre 1 et 1024 octets, correspondant au [URI address multi-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-uri).

  Emplacement de la base de données (par exemple, un chemin HDFS). 
+ `Parameters` – Tableau de mappage de paires valeur-clé.

  Chaque clé est une chaîne de clé, d’une longueur comprise entre 1 et 255 octets, correspondant au [Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine).

  Chaque valeur est une chaîne UTF-8, d’une longueur maximale de 512 000 octets.

  Ces paires clé-valeur définissent les paramètres et les propriétés de la base de données.

  Ces paires clé-valeur définissent les paramètres et les propriétés de la base de données.
+ `CreateTableDefaultPermissions` : un tableau d’objets [PrincipalPermissions](#aws-glue-api-catalog-databases-PrincipalPermissions).

  Crée un ensemble d'autorisations par défaut sur le tableau pour les principaux. Utilisé par AWS Lake Formation. Non utilisé dans le cours normal des AWS Glue opérations.
+ `TargetDatabase` – Un objet [DatabaseIdentifier](#aws-glue-api-catalog-databases-DatabaseIdentifier).

  Structure `DatabaseIdentifier` qui décrit une base de données cible pour la liaison de ressources.
+ `FederatedDatabase` – Un objet [FederatedDatabase](#aws-glue-api-catalog-databases-FederatedDatabase).

  Une structure `FederatedDatabase` qui fait référence à une entité extérieure à AWS Glue Data Catalog.

## PrincipalPermissions structure
<a name="aws-glue-api-catalog-databases-PrincipalPermissions"></a>

Autorisations accordées à un principal.

**Champs**
+ `Principal` – Un objet [DataLakePrincipal](#aws-glue-api-catalog-databases-DataLakePrincipal).

  Principal à qui les autorisations sont accordées.
+ `Permissions` – Tableau de chaînes UTF-8.

  Autorisations accordées au principal.

## DataLakePrincipal structure
<a name="aws-glue-api-catalog-databases-DataLakePrincipal"></a>

Le AWS Lake Formation directeur.

**Champs**
+ `DataLakePrincipalIdentifier` – Chaîne UTF-8, d’une longueur comprise entre 1 et 255 octets.

  Un identifiant pour le AWS Lake Formation principal.

## DatabaseIdentifier structure
<a name="aws-glue-api-catalog-databases-DatabaseIdentifier"></a>

Structure qui décrit une base de données cible pour la liaison de ressources.

**Champs**
+ `CatalogId` – Chaîne d’ID de catalogue, d’une longueur comprise entre 1 et 255 octets, correspondant au [Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine).

  ID du catalogue de données dans lequel réside la base de données.
+ `DatabaseName` – Chaîne UTF-8, d’une longueur comprise entre 1 et 255 octets, correspondant au [Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine).

  Nom de la base de données du catalogue.
+ `Region` – Chaîne UTF-8, d’une longueur comprise entre 1 et 255 octets, correspondant au [Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine).

  Région de la base de données cible.

## FederatedDatabase structure
<a name="aws-glue-api-catalog-databases-FederatedDatabase"></a>

Une base de données qui pointe vers une entité extérieure à AWS Glue Data Catalog.

**Champs**
+ `Identifier` – Chaîne UTF-8, d’une longueur comprise entre 1 et 512 octets, correspondant au [Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine).

  Un identifiant unique pour la base de données fédérée.
+ `ConnectionName` – Chaîne UTF-8, d’une longueur comprise entre 1 et 255 octets, correspondant au [Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine).

  Le nom de la connexion au métastore externe.
+ `ConnectionType` – Chaîne UTF-8, d’une longueur comprise entre 1 et 255 octets, correspondant au [Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine).

  Type de connexion utilisé pour accéder à la base de données fédérée, tel que JDBC, ODBC ou d’autres protocoles de connexion pris en charge.

## Opérations
<a name="aws-glue-api-catalog-databases-actions"></a>
+ [CreateDatabase action (Python : créer\$1base de données)](#aws-glue-api-catalog-databases-CreateDatabase)
+ [UpdateDatabase action (Python : update\$1database)](#aws-glue-api-catalog-databases-UpdateDatabase)
+ [DeleteDatabase action (Python : supprimer\$1base de données)](#aws-glue-api-catalog-databases-DeleteDatabase)
+ [GetDatabase action (Python : get\$1database)](#aws-glue-api-catalog-databases-GetDatabase)
+ [GetDatabases action (Python : get\$1databases)](#aws-glue-api-catalog-databases-GetDatabases)

## CreateDatabase action (Python : créer\$1base de données)
<a name="aws-glue-api-catalog-databases-CreateDatabase"></a>

Crée une nouvelle base de données dans un catalogue de données.

**Demande**
+ `CatalogId` – Chaîne d’ID de catalogue, d’une longueur comprise entre 1 et 255 octets, correspondant au [Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine).

  ID du catalogue de données dans lequel créer la base de données. Si aucun identifiant n'est fourni, l'identifiant du AWS compte est utilisé par défaut.
+ `DatabaseInput` – *Obligatoire :* un objet [DatabaseInput](#aws-glue-api-catalog-databases-DatabaseInput).

  Métadonnées pour la base de données.
+ `Tags` – Tableau de mappage de paires clé-valeur, avec 50 paires au maximum.

  Chaque clé est une chaîne UTF-8, d’une longueur comprise entre 1 et 128 octets.

  Chaque valeur est une chaîne UTF-8, d’une longueur maximale de 256 octets.

  Les balises que vous attribuez à la base de données.

**Réponse**
+ *Paramètres d’absence de réponse.*

**Erreurs**
+ `InvalidInputException`
+ `AlreadyExistsException`
+ `ResourceNumberLimitExceededException`
+ `InternalServiceException`
+ `OperationTimeoutException`
+ `GlueEncryptionException`
+ `ConcurrentModificationException`
+ `FederatedResourceAlreadyExistsException`
+ `FederationSourceException`
+ `FederationSourceRetryableException`

## UpdateDatabase action (Python : update\$1database)
<a name="aws-glue-api-catalog-databases-UpdateDatabase"></a>

Met à jour une définition de base de données existante dans un catalogue de données.

**Demande**
+ `CatalogId` – Chaîne d’ID de catalogue, d’une longueur comprise entre 1 et 255 octets, correspondant au [Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine).

  ID du catalogue de données dans lequel réside la base de données de métadonnées. Si aucun identifiant n'est fourni, l'identifiant du AWS compte est utilisé par défaut.
+ `Name` – *Obligatoire :* Chaîne UTF-8, d’une longueur comprise entre 1 et 255 octets, correspondant au [Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine).

  Nom de la base de données à mettre à jour dans le catalogue. Pour la compatibilité Hive, ce nom est converti en minuscules.
+ `DatabaseInput` – *Obligatoire :* un objet [DatabaseInput](#aws-glue-api-catalog-databases-DatabaseInput).

  Objet `DatabaseInput` spécifiant la nouvelle définition de la base de données de métadonnées dans le catalogue.

**Réponse**
+ *Paramètres d’absence de réponse.*

**Erreurs**
+ `EntityNotFoundException`
+ `InvalidInputException`
+ `InternalServiceException`
+ `OperationTimeoutException`
+ `GlueEncryptionException`
+ `ConcurrentModificationException`
+ `FederationSourceException`
+ `FederationSourceRetryableException`
+ `AlreadyExistsException`

## DeleteDatabase action (Python : supprimer\$1base de données)
<a name="aws-glue-api-catalog-databases-DeleteDatabase"></a>

Supprime une base de données spécifiée d'un catalogue de données.

**Note**  
Une fois cette opération terminée, vous n'avez plus accès aux tables (ni à toutes les versions de tables et partitions susceptibles d'appartenir aux tables) ni aux fonctions définies par l'utilisateur dans la base de données supprimée. AWS Glue supprime ces ressources « orphelines » de manière asynchrone en temps opportun, à la discrétion du service.  
Pour garantir la suppression immédiate de toutes les ressources connexes, avant d'appeler `DeleteDatabase`, utilisez `DeleteTableVersion` ou `BatchDeleteTableVersion`, `DeletePartition` ou `BatchDeletePartition`, `DeleteUserDefinedFunction`, et `DeleteTable` ou `BatchDeleteTable` pour supprimer les ressources appartenant à la base de données.

**Demande**
+ `CatalogId` – Chaîne d’ID de catalogue, d’une longueur comprise entre 1 et 255 octets, correspondant au [Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine).

  ID du catalogue de données dans lequel réside la base de données. Si aucun identifiant n'est fourni, l'identifiant du AWS compte est utilisé par défaut.
+ `Name` – *Obligatoire :* Chaîne UTF-8, d’une longueur comprise entre 1 et 255 octets, correspondant au [Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine).

  Nom de la base de données à supprimer. Pour la compatibilité Hive, ce nom doit être entièrement en minuscules.

**Réponse**
+ *Paramètres d’absence de réponse.*

**Erreurs**
+ `EntityNotFoundException`
+ `InvalidInputException`
+ `InternalServiceException`
+ `OperationTimeoutException`
+ `ConcurrentModificationException`
+ `FederationSourceException`
+ `FederationSourceRetryableException`

## GetDatabase action (Python : get\$1database)
<a name="aws-glue-api-catalog-databases-GetDatabase"></a>

Extrait la définition d'une base de données spécifiée.

**Demande**
+ `CatalogId` – Chaîne d’ID de catalogue, d’une longueur comprise entre 1 et 255 octets, correspondant au [Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine).

  ID du catalogue de données dans lequel réside la base de données. Si aucun identifiant n'est fourni, l'identifiant du AWS compte est utilisé par défaut.
+ `Name` – *Obligatoire :* Chaîne UTF-8, d’une longueur comprise entre 1 et 255 octets, correspondant au [Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine).

  Nom la base de données à extraire. Pour la compatibilité Hive, ce nom doit être entièrement en minuscules.

**Réponse**
+ `Database` – Un objet [Base de données](#aws-glue-api-catalog-databases-Database).

  Définition de la base de données spécifiée dans le catalogue de données.

**Erreurs**
+ `InvalidInputException`
+ `EntityNotFoundException`
+ `InternalServiceException`
+ `OperationTimeoutException`
+ `GlueEncryptionException`
+ `FederationSourceException`
+ `FederationSourceRetryableException`

## GetDatabases action (Python : get\$1databases)
<a name="aws-glue-api-catalog-databases-GetDatabases"></a>

Extrait toutes les bases de données définies dans un catalogue de données donnée.

**Demande**
+ `CatalogId` – Chaîne d’ID de catalogue, d’une longueur comprise entre 1 et 255 octets, correspondant au [Single-line string pattern](aws-glue-api-common.md#aws-glue-api-regex-oneLine).

  ID du catalogue de données à partir duquel extraire `Databases`. Si aucun identifiant n'est fourni, l'identifiant du AWS compte est utilisé par défaut.
+ `NextToken` – Chaîne UTF-8.

  Jeton de continuation, s’il s’agit d’un appel de continuation.
+ `MaxResults` – Nombre (entier), compris entre 1 et 100.

  Nombre maximum de bases de données renvoyées par réponse.
+ `ResourceShareType` – Chaîne UTF-8 (valeurs valides : `FOREIGN` \$1 `ALL` \$1 `FEDERATED`).

  Permet de spécifier que vous souhaitez répertorier les bases de données partagées avec votre compte. Les valeurs autorisées sont `FEDERATED`, `FOREIGN` ou `ALL`. 
  + Si la valeur est définie sur `FEDERATED`, la liste des bases de données fédérées (référençant une entité externe) partagées avec votre compte sera affichée.
  + Si défini sur `FOREIGN`, répertorie les bases de données partagées avec votre compte. 
  + Si défini sur `ALL`, répertorie les bases de données partagées avec votre compte, ainsi que les bases de données dans votre compte local. 
+ `AttributesToGet` – Tableau de chaînes UTF-8.

  Spécifie les champs de base de données renvoyés par l’appel `GetDatabases`. Ce paramètre n’accepte pas une liste vide. La demande doit inclure le `NAME`.

**Réponse**
+ `DatabaseList` – *Obligatoire :* un tableau d’objets [Base de données](#aws-glue-api-catalog-databases-Database).

  Liste d'objets `Database` à partir du catalogue spécifié.
+ `NextToken` – Chaîne UTF-8.

  Jeton de continuation pour la pagination de la liste des jetons renvoyés, renvoyé si le segment actuel de la liste n’est pas le dernier.

**Erreurs**
+ `InvalidInputException`
+ `InternalServiceException`
+ `OperationTimeoutException`
+ `GlueEncryptionException`
+ `EntityNotFoundException`
+ `FederationSourceException`
+ `FederationSourceRetryableException`