Maison >base de données >tutoriel mysql >Comment ajouter une clé primaire à incrémentation automatique à une table PostgreSQL existante ?

Comment ajouter une clé primaire à incrémentation automatique à une table PostgreSQL existante ?

Susan Sarandon
Susan Sarandonoriginal
2025-01-05 05:45:40194parcourir

How to Add an Auto-Incrementing Primary Key to an Existing PostgreSQL Table?

Ajout d'une clé primaire à incrémentation automatique dans PostgreSQL

Énoncé du problème :

Impossible d'ajouter une clé primaire à incrémentation automatique vers une table existante en raison d'une erreur "la séquence doit avoir le même propriétaire que la table" rencontrée lors de la création d'une colonne à l'aide de l'option Type BIGSERIAL.

Solution :

Pour ajouter une clé primaire à incrémentation automatique à une table existante sans la recréer, utilisez la commande suivante :

ALTER TABLE your_table ADD COLUMN key_column BIGSERIAL PRIMARY KEY;

Explication :

Le type BIGSERIAL crée une séquence qui génère des données uniques, incrémenter les valeurs pour la colonne spécifiée. La contrainte PRIMARY KEY garantit que ces valeurs sont uniques et utilisées pour identifier chaque ligne de la table.

Remarque supplémentaire :

Assurez-vous que vous utilisez le même utilisateur de base de données qui a créé la table pour exécuter la commande ADD COLUMN. Sinon, vous risquez de rencontrer l'erreur mentionnée dans la question concernant la propriété de la séquence.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn