> ## Documentation Index
> Fetch the complete documentation index at: https://docs.replit.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Base de données

> Apprenez à utiliser la base de données SQL intégrée de Replit pour stocker et récupérer des données pour votre application.

export const YouTubeEmbed = ({videoId, title = "YouTube video", startAt}) => {
  if (!videoId) {
    return null;
  }
  let url = "https://www.youtube.com/embed/" + videoId;
  if (startAt) {
    url = url + "?start=" + startAt;
  }
  return <Frame>
      <iframe src={url} title={title} allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" allowFullScreen></iframe>
    </Frame>;
};

Replit Database utilise une base de données SQL entièrement gérée qui vous permet d'ajouter un stockage de données persistant à votre application Replit depuis l'éditeur de projet.

<Note>
  La façon la plus rapide de commencer est de demander à **Agent** d'ajouter une base de données à votre application. Agent configurera l'intégration, créera le schéma de la base de données et mettra à jour votre application pour stocker et récupérer des données.
</Note>

<Frame>
  <img src="https://mintcdn.com/replit/tlGd6oyGOaUUeRxr/images/databases/database-editor.jpg?fit=max&auto=format&n=tlGd6oyGOaUUeRxr&q=85&s=18a9293165cc5d42db6c61ea572780d1" alt="capture d'écran de l'éditeur de base de données" width="1389" height="871" data-path="images/databases/database-editor.jpg" />
</Frame>

## Fonctionnalités

L'outil Replit Database fournit les fonctionnalités suivantes :

* **Outils de base de données** : Exécutez des requêtes, gérez le schéma de la base de données et visualisez les données avec les outils SQL intégrés
* **Voyage dans le temps** : Restaurez votre base de données à n'importe quel point de contrôle **Agent** grâce à la [fonctionnalité de rollback](/fr/references/version-control/checkpoints-and-rollbacks/)
* **Stockage gratuit** : Inclut 20 Go de stockage gratuit pour chaque application Replit
* **Variables d'environnement** : Utilisez des variables d'environnement dans votre application Replit pour accéder de façon sécurisée à la base de données

<Info>
  Avant le 4 décembre 2025, la base de données de développement était hébergée sur Neon et présente quelques différences importantes.
  Consultez la section [Base de données de développement Neon legacy](#legacy-development-database) pour plus de détails.
</Info>

## Utilisation

<YouTubeEmbed videoId="zbyRuoPNIc8" title="How to use Databases on Replit" />

Vous pouvez accéder à l'outil Replit Database directement dans l'éditeur de projet.
Les sections suivantes vous guident dans la configuration et la gestion de votre base de données.

<Accordion title="Comment accéder à l'outil Replit Database">
  Depuis le **dock d'outils** à gauche :

  1. Sélectionnez <img class="icon-svg" src="https://mintcdn.com/replit/X_IP1EeHGm0cA2VA/images/icons/workspace-all-tools-button.svg?fit=max&auto=format&n=X_IP1EeHGm0cA2VA&q=85&s=579643854fb13c402de516695e52c554" alt="Icône Tous les outils" width="16" height="16" data-path="images/icons/workspace-all-tools-button.svg" /> **All tools** pour voir la liste des outils de l'éditeur de projet.
  2. Sélectionnez <img class="icon-svg" src="https://mintcdn.com/replit/rJldsgYVucXB_6kW/images/icons/postgres.svg?fit=max&auto=format&n=rJldsgYVucXB_6kW&q=85&s=68fc78519888560040eb7096f68e76df" alt="Icône base de données PostgreSQL" width="24" height="24" data-path="images/icons/postgres.svg" /> **Database**.

  Depuis la **barre de recherche** :

  1. Sélectionnez la <img class="icon-svg" src="https://mintcdn.com/replit/X_IP1EeHGm0cA2VA/images/icons/workspace-search-icon.svg?fit=max&auto=format&n=X_IP1EeHGm0cA2VA&q=85&s=d3feed840da2d19e1ee4873d137114dc" alt="icône loupe" width="16" height="16" data-path="images/icons/workspace-search-icon.svg" /> loupe en haut pour ouvrir l'outil de recherche
  2. Tapez « Replit Database » pour localiser l'outil et sélectionnez-le dans les résultats.
</Accordion>

### Ajouter une base de données

Toutes les applications Replit sont livrées avec une base de données par défaut. Vous pouvez y accéder en sélectionnant l'outil <img class="icon-svg" src="https://mintcdn.com/replit/rJldsgYVucXB_6kW/images/icons/postgres.svg?fit=max&auto=format&n=rJldsgYVucXB_6kW&q=85&s=68fc78519888560040eb7096f68e76df" alt="Icône base de données PostgreSQL" width="24" height="24" data-path="images/icons/postgres.svg" /> **Database** dans l'éditeur de projet.

Vous pouvez intégrer la base de données à votre application Replit en demandant à **Agent** d'ajouter une base de données PostgreSQL à votre application Replit,
en précisant les données que votre application Replit doit stocker. Agent créera le schéma de la base de données
et mettra à jour votre application pour communiquer avec la base de données.

### Restaurer votre base de données à un état précédent

Vous pouvez revenir à un état précédent de votre application et de votre base de données grâce à la [fonctionnalité de rollback](/fr/references/version-control/checkpoints-and-rollbacks/).
Cette fonctionnalité vous permet de restaurer votre base de données à n'importe quel point de contrôle créé par **Agent**.

<Frame>
  <img src="https://mintcdn.com/replit/0UCOQvZyQpUEM03B/images/replitai/checkpoint-rollback.png?fit=max&auto=format&n=0UCOQvZyQpUEM03B&q=85&s=f9594eb28458309b2759e8698b8535ce" alt="Interface de rollback de point de contrôle affichant les options de rollback" width="3154" height="2366" data-path="images/replitai/checkpoint-rollback.png" />
</Frame>

<Info>
  Assurez-vous de sélectionner « Database » sous « Additional rollback options » lors de la restauration à l'état d'un point de contrôle. Cela restaurera votre base de données à l'état qu'elle avait au moment du point de contrôle.
</Info>

### Exécuter des commandes de base de données

Le SQL runner est un outil de l'éditeur de projet qui vous permet d'exécuter des commandes SQL sur votre base de données et d'afficher les résultats.

<Accordion title="Comment accéder au SQL runner">
  Depuis l'outil **Replit Database** :

  1. Sélectionnez l'onglet **My Data**
  2. Sélectionnez <img class="icon-svg" src="https://mintcdn.com/replit/X_IP1EeHGm0cA2VA/images/icons/sql-runner-icon.svg?fit=max&auto=format&n=X_IP1EeHGm0cA2VA&q=85&s=fd73c517972d1a4004105e6ab49d130b" alt="Icône SQL runner" width="16" height="16" data-path="images/icons/sql-runner-icon.svg" /> **SQL runner**
</Accordion>

Pour exécuter une requête, entrez l'instruction SQL dans la zone de texte et sélectionnez le bouton
adjacent <img class="icon-svg" src="https://mintcdn.com/replit/X_IP1EeHGm0cA2VA/images/icons/sql-play.svg?fit=max&auto=format&n=X_IP1EeHGm0cA2VA&q=85&s=eb0c68e0ab494444f0cbc60325bd1150" alt="icône d'exécution sql" width="18" height="18" data-path="images/icons/sql-play.svg" /> comme indiqué ci-dessous :

<Frame>
  <img src="https://mintcdn.com/replit/tlGd6oyGOaUUeRxr/images/databases/sql-runner-run.jpg?fit=max&auto=format&n=tlGd6oyGOaUUeRxr&q=85&s=258c6ac51524a21e6a6e2070c7cefd3c" alt="capture d'écran du SQL runner et du bouton d'exécution" width="1390" height="608" data-path="images/databases/sql-runner-run.jpg" />
</Frame>

### Parcourir et modifier les données visuellement

L'outil Replit Database inclut <a href="https://orm.drizzle.team/drizzle-studio/overview" target="_blank">Drizzle Studio</a>,
un outil qui vous permet de parcourir et de modifier les données visuellement.

Ces outils visuels vous aident à éviter les erreurs de syntaxe et offrent les fonctionnalités suivantes :

* Filtrer et trier les données pour se concentrer sur des informations spécifiques
* Exporter les données vers un fichier pour une utilisation externe
* Insérer ou modifier des données de lignes
* Créer et gérer le schéma, les tables, les vues et les énumérations

Vous pouvez accéder à ces outils dans l'onglet **My Data** de l'outil **Replit Database**.

L'image suivante montre une vue de l'interface du générateur Drizzle Studio :

<Frame>
  <img src="https://mintcdn.com/replit/tlGd6oyGOaUUeRxr/images/databases/database-editor.jpg?fit=max&auto=format&n=tlGd6oyGOaUUeRxr&q=85&s=18a9293165cc5d42db6c61ea572780d1" alt="image de l'éditeur de structure de table" width="1389" height="871" data-path="images/databases/database-editor.jpg" />
</Frame>

<Tip>
  Vous pouvez vous connecter à votre base de données à l'aide de n'importe quel client SQL compatible PostgreSQL en utilisant la chaîne de connexion
  trouvée dans vos [variables d'environnement](#variables-denvironnement).
</Tip>

### Afficher les identifiants de connexion et l'utilisation

Les identifiants de connexion à votre base de données sont stockés en tant que variables d'environnement dans votre application Replit.
Ces identifiants sont utilisés par votre application pour se connecter de façon sécurisée à la base de données et exécuter des commandes.

<Accordion title="Comment accéder aux identifiants de connexion à votre base de données">
  1. Accédez à l'outil <img class="icon-svg" src="https://mintcdn.com/replit/rJldsgYVucXB_6kW/images/icons/postgres.svg?fit=max&auto=format&n=rJldsgYVucXB_6kW&q=85&s=68fc78519888560040eb7096f68e76df" alt="Icône base de données PostgreSQL" width="24" height="24" data-path="images/icons/postgres.svg" /> **Replit Database** dans l'éditeur de projet
  2. Sélectionnez la base de données Development ou Production
  3. Sélectionnez l'onglet <img class="icon-svg" src="https://mintcdn.com/replit/rJldsgYVucXB_6kW/images/icons/settings-icon.svg?fit=max&auto=format&n=rJldsgYVucXB_6kW&q=85&s=27601119959a9349e102c44c2adbd398" alt="icône engrenage" width="16" height="16" data-path="images/icons/settings-icon.svg" /> **Settings** (l'icône en forme d'engrenage). Cet onglet affiche les identifiants de connexion et l'utilisation du stockage pour votre base de données.
</Accordion>

#### Variables d'environnement

La variable d'environnement suivante est disponible pour se connecter à votre base de données de développement :

* `DATABASE_URL` : comment se connecter et s'authentifier à la base de données

Ce `DATABASE_URL` ne peut être utilisé que par votre application et même s'il est divulgué, personne d'autre ne peut l'utiliser pour accéder à et modifier votre base de données.

<Info>
  Si votre base de données de développement est encore sur l'[infrastructure Neon legacy](#legacy-development-database), les variables d'environnement supplémentaires suivantes sont également disponibles : `PGHOST`, `PGUSER`, `PGPASSWORD`, `PGDATABASE` et `PGPORT`. Ces variables de connexion individuelles ne sont **pas** fournies pour les bases de données hébergées sur l'infrastructure actuelle de Replit — utilisez `DATABASE_URL` à la place.
</Info>

<Info>
  Parce que ce `DATABASE_URL` est limité à votre application, votre base de données de développement ne peut pas être accédée par d'autres applications, même celles que vous possédez ou des outils de base de données externes.
  Cette séparation suit les meilleures pratiques de sécurité et empêche l'accès non autorisé à votre base de données.
</Info>

<Warning>
  Si vous utilisez encore la [base de données de développement Neon legacy](#legacy-development-database), ne partagez pas votre `DATABASE_URL`.
  Il contient vos identifiants de base de données qui pourraient être utilisés par n'importe qui pour accéder à et modifier votre base de données.
  Ne le collez jamais dans des endroits publics ou dans des tickets de support.
</Warning>

### Fonctionnalités de sécurité

Lorsque vous ajoutez une intégration de base de données avec **Agent**, il ajoute un Object-Relational Mapper (ORM)
qui gère toutes les communications avec la base de données avec une sécurité intégrée.

Cette couche ORM, combinée à l'implémentation des meilleures pratiques de sécurité par Agent, protège votre application contre les exploits grâce aux fonctionnalités suivantes :

* **Validation du schéma** : Vérifie que les données sont conformes aux formats attendus
* **Assainissement des données** : Nettoie automatiquement les entrées des créateurs pour prévenir les attaques par injection SQL

## Base de données de développement legacy

Avant le 4 décembre 2025, la base de données de développement était hébergée sur <a href="https://neon.com/" target="_blank">Neon</a>.
Cette base de données est maintenant dépréciée et toutes les nouvelles bases de données de développement sont hébergées sur l'infrastructure de base de données propre de Replit.

Vous pouvez voir si votre base de données de développement est hébergée sur Neon en vérifiant la [variable d'environnement](#afficher-les-identifiants-de-connexion-et-lutilisation) `DATABASE_URL`.

<Info>
  Si `DATABASE_URL` contient `neon.tech/neondb`, alors votre base de données de développement est encore hébergée sur Neon.
  Sinon, si elle contient `helium/heliumdb`, alors votre base de données de développement est maintenant hébergée sur Replit.
</Info>

Voici les différences clés entre la base de données de développement Neon legacy et la nouvelle base de données de développement Replit :

| **Fonctionnalité**                 | **Replit (actuel)**                                                                                                                                                                           | **Neon (legacy)**                                                                                                                                                                      |
| ---------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| **Hébergement**                    | Hébergé sur l'infrastructure propre de Replit                                                                                                                                                 | Hébergé sur Neon (fournisseur tiers)                                                                                                                                                   |
| **Facturation**                    | Inclus gratuitement avec chaque application Replit                                                                                                                                            | Facturation basée sur l'utilisation. Voir [Facturation des publications et des bases de données](/fr/billing/about-usage-based-billing#databases) pour plus de détails.                |
| **Capacité de restauration**       | Restaurez votre base de données à n'importe quel point de contrôle grâce à la [fonctionnalité de rollback](/fr/references/version-control/checkpoints-and-rollbacks/)                         | Restauration à un point dans le temps (PITR) — récupérez à n'importe quel point dans la fenêtre de rétention des sauvegardes.                                                          |
| **Sécurité de connexion**          | Accessible uniquement depuis votre application ; jamais exposé publiquement.                                                                                                                  | Utilisait une chaîne de connexion complète — si divulguée, n'importe qui pourrait accéder à et modifier votre base de données.                                                         |
| **Comportement de remix**          | Le [remix](/fr/build/remix-an-app) crée une nouvelle base de données de développement avec des données copiées pour l'isolation et la sécurité.                                               | Le remix réutilisait la même base de données pour toutes les copies, donc les modifications dans les remixes pouvaient affecter l'application d'origine.                               |
| **Création de la base de données** | Créée automatiquement pour chaque application Replit.                                                                                                                                         | Nécessitait une configuration explicite.                                                                                                                                               |
| **Flux de publication**            | Le déploiement ou la publication nécessite la création d'une [base de données de production](/fr/references/data-and-storage/production-databases) pour l'isolation entre les environnements. | Le développement et la production partageaient la même base de données, donc des modifications de développement non intentionnelles pouvaient affecter les applications en production. |

<Warning>
  Si votre application a été forkée ou remixée lors de l'utilisation de la base de données Neon legacy, votre application publiée peut encore référencer l'URL de la base de données de l'application d'origine. Après la [mise à niveau de la base de données](/fr/references/data-and-storage/database-upgrade), cette connexion partagée cessera de fonctionner. Consultez [Corriger une application publiée utilisant une base de données partagée](/fr/references/data-and-storage/shared-database-migration) pour savoir comment mettre à jour votre application publiée.
</Warning>
