From e710dbf720df0010e9eff274d8e92cbf571ac4c7 Mon Sep 17 00:00:00 2001 From: Steven Kabbes Date: Fri, 4 Aug 2017 14:00:52 -0700 Subject: [PATCH 1/3] Add comments to tables and columns --- pkg/statements/sql.go | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/pkg/statements/sql.go b/pkg/statements/sql.go index 973196c..7d3d8cc 100644 --- a/pkg/statements/sql.go +++ b/pkg/statements/sql.go @@ -81,7 +81,8 @@ SELECT is_nullable, character_maximum_length, character_set_catalog, - column_default + column_default, + pg_catalog.col_description(concat($1, '.', $2)::regclass::oid, ordinal_position) as comment FROM information_schema.columns WHERE @@ -120,7 +121,8 @@ SELECT WHEN 's' THEN 'special' WHEN 'f' THEN 'foreign_table' END as "type", - pg_catalog.pg_get_userbyid(c.relowner) as "owner" + pg_catalog.pg_get_userbyid(c.relowner) as "owner", + pg_catalog.obj_description(c.oid) as "comment" FROM pg_catalog.pg_class c LEFT JOIN From 8d4d564935b4242b9ea3a265c86584907f1a1dd0 Mon Sep 17 00:00:00 2001 From: Steven Kabbes Date: Fri, 4 Aug 2017 14:13:49 -0700 Subject: [PATCH 2/3] test: fix tests to expect comment column --- pkg/client/client_test.go | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/pkg/client/client_test.go b/pkg/client/client_test.go index 1448cf2..3d6b935 100644 --- a/pkg/client/client_test.go +++ b/pkg/client/client_test.go @@ -206,7 +206,7 @@ func test_Objects(t *testing.T) { } assert.Equal(t, nil, err) - assert.Equal(t, []string{"schema", "name", "type", "owner"}, res.Columns) + assert.Equal(t, []string{"schema", "name", "type", "owner", "comment"}, res.Columns) assert.Equal(t, []string{"public"}, mapKeys(objects)) assert.Equal(t, tables, objects["public"].Tables) assert.Equal(t, []string{"recent_shipments", "stock_view"}, objects["public"].Views) @@ -230,6 +230,7 @@ func test_Table(t *testing.T) { "character_maximum_length", "character_set_catalog", "column_default", + "comment" } assert.Equal(t, nil, err) From 2d03aa02e25881f67d4d6b2f7feae9d5ac8f5f6b Mon Sep 17 00:00:00 2001 From: Steven Kabbes Date: Fri, 4 Aug 2017 14:16:59 -0700 Subject: [PATCH 3/3] test: attempt to fix tests again --- pkg/client/client_test.go | 2 +- pkg/statements/sql.go | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/pkg/client/client_test.go b/pkg/client/client_test.go index 3d6b935..e44fac9 100644 --- a/pkg/client/client_test.go +++ b/pkg/client/client_test.go @@ -230,7 +230,7 @@ func test_Table(t *testing.T) { "character_maximum_length", "character_set_catalog", "column_default", - "comment" + "comment", } assert.Equal(t, nil, err) diff --git a/pkg/statements/sql.go b/pkg/statements/sql.go index 7d3d8cc..97bbd2b 100644 --- a/pkg/statements/sql.go +++ b/pkg/statements/sql.go @@ -82,7 +82,7 @@ SELECT character_maximum_length, character_set_catalog, column_default, - pg_catalog.col_description(concat($1, '.', $2)::regclass::oid, ordinal_position) as comment + pg_catalog.col_description(($1::text || '.' || $2::text)::regclass::oid, ordinal_position) as comment FROM information_schema.columns WHERE