Name: | attributes |
Owner: | postgres |
Has rules: | |
Has Triggers: | |
Comment: |
Name | Type | Length | |
|
udt_catalog | sql_identifier | -1 |
|
udt_schema | sql_identifier | -1 |
|
udt_name | sql_identifier | -1 |
|
attribute_name | sql_identifier | -1 |
|
ordinal_position | cardinal_number | -1 |
|
attribute_default | character_data | -1 |
|
is_nullable | character_data | -1 |
|
data_type | character_data | -1 |
|
character_maximum_length | cardinal_number | -1 |
|
character_octet_length | cardinal_number | -1 |
|
character_set_catalog | sql_identifier | -1 |
|
character_set_schema | sql_identifier | -1 |
|
character_set_name | sql_identifier | -1 |
|
collation_catalog | sql_identifier | -1 |
|
collation_schema | sql_identifier | -1 |
|
collation_name | sql_identifier | -1 |
|
numeric_precision | cardinal_number | -1 |
|
numeric_precision_radix | cardinal_number | -1 |
|
numeric_scale | cardinal_number | -1 |
|
datetime_precision | cardinal_number | -1 |
|
interval_type | character_data | -1 |
|
interval_precision | character_data | -1 |
|
attribute_udt_catalog | sql_identifier | -1 |
|
attribute_udt_schema | sql_identifier | -1 |
|
attribute_udt_name | sql_identifier | -1 |
|
scope_catalog | sql_identifier | -1 |
|
scope_schema | sql_identifier | -1 |
|
scope_name | sql_identifier | -1 |
|
maximum_cardinality | cardinal_number | -1 |
|
dtd_identifier | sql_identifier | -1 |
|
is_derived_reference_attribute | character_data | -1 |
CREATE VIEW attributes AS
SELECT (current_database())::sql_identifier AS udt_catalog, (nc.nspname)::sql_identifier AS udt_schema, (c.relname)::sql_identifier AS udt_name, (a.attname)::sql_identifier AS attribute_name, (a.attnum)::cardinal_number AS ordinal_position, (pg_get_expr(ad.adbin, ad.adrelid))::character_data AS attribute_default, (CASE WHEN (a.attnotnull OR ((t.typtype = 'd'::"char") AND t.typnotnull)) THEN 'NO'::text ELSE 'YES'::text END)::character_data AS is_nullable, (CASE WHEN ((t.typelem <> (0)::oid) AND (t.typlen = -1)) THEN 'ARRAY'::text WHEN (nt.nspname = 'pg_catalog'::name) THEN format_type(a.atttypid, NULL::integer) ELSE 'USER-DEFINED'::text END)::character_data AS data_type, (_pg_char_max_length(_pg_truetypid(a.*, t.*), _pg_truetypmod(a.*, t.*)))::cardinal_number AS character_maximum_length, (_pg_char_octet_length(_pg_truetypid(a.*, t.*), _pg_truetypmod(a.*, t.*)))::cardinal_number AS character_octet_length, (NULL::character varying)::sql_identifier AS character_set_catalog, (NULL::character varying)::sql_identifier AS character_set_schema, (NULL::character varying)::sql_identifier AS character_set_name, (NULL::character varying)::sql_identifier AS collation_catalog, (NULL::character varying)::sql_identifier AS collation_schema, (NULL::character varying)::sql_identifier AS collation_name, (_pg_numeric_precision(_pg_truetypid(a.*, t.*), _pg_truetypmod(a.*, t.*)))::cardinal_number AS numeric_precision, (_pg_numeric_precision_radix(_pg_truetypid(a.*, t.*), _pg_truetypmod(a.*, t.*)))::cardinal_number AS numeric_precision_radix, (_pg_numeric_scale(_pg_truetypid(a.*, t.*), _pg_truetypmod(a.*, t.*)))::cardinal_number AS numeric_scale, (_pg_datetime_precision(_pg_truetypid(a.*, t.*), _pg_truetypmod(a.*, t.*)))::cardinal_number AS datetime_precision, (NULL::character varying)::character_data AS interval_type, (NULL::character varying)::character_data AS interval_precision, (current_database())::sql_identifier AS attribute_udt_catalog, (nt.nspname)::sql_identifier AS attribute_udt_schema, (t.typname)::sql_identifier AS attribute_udt_name, (NULL::character varying)::sql_identifier AS scope_catalog, (NULL::character varying)::sql_identifier AS scope_schema, (NULL::character varying)::sql_identifier AS scope_name, (NULL::integer)::cardinal_number AS maximum_cardinality, (a.attnum)::sql_identifier AS dtd_identifier, ('NO'::character varying)::character_data AS is_derived_reference_attribute FROM (pg_attribute a LEFT JOIN pg_attrdef ad ON (((a.attrelid = ad.adrelid) AND (a.attnum = ad.adnum)))), pg_class c, pg_namespace nc, (pg_type t JOIN pg_namespace nt ON ((t.typnamespace = nt.oid))) WHERE ((((((a.attrelid = c.oid) AND (a.atttypid = t.oid)) AND (nc.oid = c.relnamespace)) AND (a.attnum > 0)) AND (NOT a.attisdropped)) AND (c.relkind = 'c'::"char"));
ALTER TABLE information_schema.attributes OWNER TO postgres;
See Also
List of views