Skip to content

Commit 22fa5f3

Browse files
authored
feat(postgres): Inheritance (#1339)
Add support for PostgreSQL [table inheritance](https://www.postgresql.org/docs/current/ddl-inherit.html) Add the columns from the parent tables to the child table. This change also adds support for columns from partition tables. Fixes #403
1 parent 24f4d07 commit 22fa5f3

File tree

17 files changed

+380
-0
lines changed

17 files changed

+380
-0
lines changed

internal/endtoend/testdata/ddl_create_table_inherits/postgresql/pgx/go/db.go

Lines changed: 30 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

internal/endtoend/testdata/ddl_create_table_inherits/postgresql/pgx/go/models.go

Lines changed: 27 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

internal/endtoend/testdata/ddl_create_table_inherits/postgresql/pgx/go/query.sql.go

Lines changed: 85 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.
Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
-- name: GetAllParties :many
2+
SELECT * FROM party;
3+
4+
-- name: GetAllPeople :many
5+
SELECT * FROM person;
6+
7+
-- name: GetAllOrganisations :many
8+
SELECT * FROM organisation;
Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
CREATE TABLE party (
2+
party_id uuid PRIMARY KEY,
3+
name text NOT NULL
4+
);
5+
6+
CREATE TABLE person (
7+
first_name text NOT NULL,
8+
last_name text NOT NULL
9+
) INHERITS (party);
10+
11+
CREATE TABLE organisation (
12+
legal_name text
13+
) INHERITS (party);
Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
{
2+
"version": "1",
3+
"packages": [
4+
{
5+
"path": "go",
6+
"engine": "postgresql",
7+
"sql_package": "pgx/v4",
8+
"name": "querytest",
9+
"schema": "schema.sql",
10+
"queries": "query.sql"
11+
}
12+
]
13+
}

internal/endtoend/testdata/ddl_create_table_inherits/postgresql/stdlib/go/db.go

Lines changed: 29 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

internal/endtoend/testdata/ddl_create_table_inherits/postgresql/stdlib/go/models.go

Lines changed: 27 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

internal/endtoend/testdata/ddl_create_table_inherits/postgresql/stdlib/go/query.sql.go

Lines changed: 94 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.
Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
-- name: GetAllParties :many
2+
SELECT * FROM party;
3+
4+
-- name: GetAllPeople :many
5+
SELECT * FROM person;
6+
7+
-- name: GetAllOrganisations :many
8+
SELECT * FROM organisation;

0 commit comments

Comments
 (0)