Languages
[Edit]
EN

PostgreSQL - add FOREIGN KEY to existing table

0 points
Created by:
Tehya-Blanchard
474

In this article, we would like to show you how to add FOREIGN KEY to the existing table in PostgreSQL.

Quick solution:

ALTER TABLE
    "table_name"
ADD CONSTRAINT 
    "constraint_name" FOREIGN KEY ("column_name")
    REFERENCES "reference_table"("reference_column");

Practical example

To show how to add FOREIGN KEY to the existing table, we will use the following tables

PostgreSQL - example table used to add FOREIGN KEY
PostgreSQL - example table used to add FOREIGN KEY
PostgreSQL - example table used to add FOREIGN KEY
PostgreSQL - example table used to add FOREIGN KEY

Note:

At the end of this article you can find database preparation SQL queries.

Example

In this example, we will add fk_group_id foreign key to the group_id column from users table which is a reference to the id column from groups table.

Query:

ALTER TABLE "users"
ADD CONSTRAINT "fk_group_id" FOREIGN KEY ("group_id") REFERENCES "groups"("id");

Output:

Database preparation

create_tables.sql file:

CREATE TABLE "groups" (
	"id" SERIAL,
	"group_name" VARCHAR(50) NOT NULL,
	PRIMARY KEY ("id")
);

CREATE TABLE "users" (
	"id" SERIAL,
	"username" VARCHAR(50) NOT NULL,
	"group_id" INTEGER,
	PRIMARY KEY ("id")
);

insert_data.sql file:

INSERT INTO "groups"
    ("group_name")
VALUES
    ('group1'),
	('group2');

INSERT INTO "users"
    ("username", "group_id")
VALUES
    ('user1', 1),
    ('user2', 1),
    ('user3', 2),
	('user4', 2);
Donate to Dirask
Our content is created by volunteers - like Wikipedia. If you think, the things we do are good, donate us. Thanks!
Join to our subscribers to be up to date with content, news and offers.

PostgreSQL - problems

PostgreSQL - add FOREIGN KEY to existing table
Native Advertising
🚀
Get your tech brand or product in front of software developers.
For more information Contact us
Dirask - we help you to
solve coding problems.
Ask question.

❤️💻 🙂

Join