36.17. columns #
ÐÑедÑÑавление columns ÑодеÑÐ¶Ð¸Ñ Ð¸Ð½ÑоÑмаÑÐ¸Ñ Ð¾Ð±Ð¾ вÑеÑ
ÑÑолбÑаÑ
ÑÐ°Ð±Ð»Ð¸Ñ (или ÑÑолбÑаÑ
пÑедÑÑавлений) в базе даннÑÑ
. СиÑÑемнÑе ÑÑолбÑÑ (ctid и Ñ. д.) в нÑм не оÑобÑажаÑÑÑÑ. РнÑм показÑваÑÑÑÑ ÑолÑко Ñе ÑÑолбÑÑ, к коÑоÑÑм Ð¸Ð¼ÐµÐµÑ Ð´Ð¾ÑÑÑп ÑекÑÑий полÑзоваÑÐµÐ»Ñ (ÑвлÑÑÑÑ Ð²Ð»Ð°Ð´ÐµÐ»ÑÑем или Ð¸Ð¼ÐµÑ Ð½ÐµÐºÐ¾ÑоÑÑе пÑава).
ТаблиÑа 36.15. СÑолбÑÑ columns
Тип ÑÑолбÑа ÐпиÑание |
|---|
ÐÐ¼Ñ Ð±Ð°Ð·Ñ Ð´Ð°Ð½Ð½ÑÑ , ÑодеÑжаÑей ÑаблиÑÑ (вÑегда ÑекÑÑÐ°Ñ Ð±Ð°Ð·Ð°) |
ÐÐ¼Ñ ÑÑ ÐµÐ¼Ñ, ÑодеÑжаÑей ÑаблиÑÑ |
ÐÐ¼Ñ ÑаблиÑÑ |
ÐÐ¼Ñ ÑÑолбÑа |
ÐоÑÑдковÑй Ð½Ð¾Ð¼ÐµÑ ÑÑолбÑа в ÑаблиÑе (нÑмеÑаÑÐ¸Ñ Ð½Ð°ÑинаеÑÑÑ Ñ 1) |
ÐÑÑажение по ÑмолÑÐ°Ð½Ð¸Ñ Ð´Ð»Ñ ÑÑолбÑа |
|
Тип даннÑÑ
ÑÑолбÑа, еÑли ÑÑо вÑÑÑоеннÑй Ñип, либо |
ÐÑли в |
ÐÑли в |
ÐÑли в |
ÐÑли в |
ÐÑли в |
ÐÑли в |
ÐÑли в |
ÐÑноÑиÑÑÑ Ðº ÑÑнкÑионалÑноÑÑи, оÑÑÑÑÑÑвÑÑÑей в Postgres Pro (Ñм. поле |
ÐÑноÑиÑÑÑ Ðº ÑÑнкÑионалÑноÑÑи, оÑÑÑÑÑÑвÑÑÑей в Postgres Pro |
ÐÑноÑиÑÑÑ Ðº ÑÑнкÑионалÑноÑÑи, оÑÑÑÑÑÑвÑÑÑей в Postgres Pro |
ÐÑноÑиÑÑÑ Ðº ÑÑнкÑионалÑноÑÑи, оÑÑÑÑÑÑвÑÑÑей в Postgres Pro |
ÐÐ¼Ñ Ð±Ð°Ð·Ñ Ð´Ð°Ð½Ð½ÑÑ , ÑодеÑжаÑей пÑавило ÑоÑÑиÑовки ÑÑолбÑа (ÑÑо вÑегда ÑекÑÑÐ°Ñ Ð±Ð°Ð·Ð°), либо NULL, еÑли ÑÑо пÑавило по ÑмолÑÐ°Ð½Ð¸Ñ Ð¸Ð»Ð¸ Ñип даннÑÑ ÑÑолбÑа неÑоÑÑиÑÑемÑй |
ÐÐ¼Ñ ÑÑ ÐµÐ¼Ñ, ÑодеÑжаÑей пÑавило ÑоÑÑиÑовки ÑÑолбÑа, либо NULL, еÑли ÑÑо пÑавило по ÑмолÑÐ°Ð½Ð¸Ñ Ð¸Ð»Ð¸ Ñип даннÑÑ ÑÑолбÑа неÑоÑÑиÑÑемÑй |
ÐÐ¼Ñ Ð¿Ñавила ÑоÑÑиÑовки ÑÑолбÑа, либо NULL, еÑли ÑÑо пÑавило по ÑмолÑÐ°Ð½Ð¸Ñ Ð¸Ð»Ð¸ Ñип даннÑÑ ÑÑолбÑа неÑоÑÑиÑÑемÑй |
ÐÑли Ñелевой ÑÑÐ¾Ð»Ð±ÐµÑ Ð¸Ð¼ÐµÐµÑ Ñип домена, ÑÑÐ¾Ñ ÑÑÐ¾Ð»Ð±ÐµÑ ÑодеÑÐ¶Ð¸Ñ Ð¸Ð¼Ñ Ð±Ð°Ð·Ñ Ð´Ð°Ð½Ð½ÑÑ , в коÑоÑой опÑеделÑн домен (вÑегда ÑекÑÑÐ°Ñ Ð±Ð°Ð·Ð°), инаÑе â NULL. |
ÐÑли Ñелевой ÑÑÐ¾Ð»Ð±ÐµÑ Ð¸Ð¼ÐµÐµÑ Ñип домена, ÑÑÐ¾Ñ ÑÑÐ¾Ð»Ð±ÐµÑ ÑодеÑÐ¶Ð¸Ñ Ð¸Ð¼Ñ ÑÑ ÐµÐ¼Ñ, в коÑоÑой опÑеделÑн домен, инаÑе â NULL. |
ÐÑли Ñелевой ÑÑÐ¾Ð»Ð±ÐµÑ Ð¸Ð¼ÐµÐµÑ Ñип домена, ÑÑÐ¾Ñ ÑÑÐ¾Ð»Ð±ÐµÑ ÑодеÑÐ¶Ð¸Ñ Ð¸Ð¼Ñ Ð´Ð¾Ð¼ÐµÐ½Ð°, инаÑе â NULL. |
ÐÐ¼Ñ Ð±Ð°Ð·Ñ Ð´Ð°Ð½Ð½ÑÑ , в коÑоÑой опÑеделÑн Ñип (еÑли пÑименимо, нижележаÑий Ñип домена) ÑÑолбÑа (вÑегда ÑекÑÑÐ°Ñ Ð±Ð°Ð·Ð°) |
ÐÐ¼Ñ ÑÑ ÐµÐ¼Ñ, в коÑоÑой опÑеделÑн Ñип (еÑли пÑименимо, нижележаÑий Ñип домена) ÑÑолбÑа (вÑегда ÑекÑÑÐ°Ñ Ð±Ð°Ð·Ð°) |
ÐÐ¼Ñ Ñипа даннÑÑ ÑÑолбÑа (еÑли пÑименимо, нижележаÑий Ñип домена) |
ÐÑноÑиÑÑÑ Ðº ÑÑнкÑионалÑноÑÑи, оÑÑÑÑÑÑвÑÑÑей в Postgres Pro |
ÐÑноÑиÑÑÑ Ðº ÑÑнкÑионалÑноÑÑи, оÑÑÑÑÑÑвÑÑÑей в Postgres Pro |
ÐÑноÑиÑÑÑ Ðº ÑÑнкÑионалÑноÑÑи, оÑÑÑÑÑÑвÑÑÑей в Postgres Pro |
ÐÑегда NULL, Ñак как маÑÑÐ¸Ð²Ñ Ð¸Ð¼ÐµÑÑ Ð½ÐµÐ¾Ð³ÑаниÑеннÑÑ Ð¼Ð°ÐºÑималÑнÑÑ ÑмкоÑÑÑ Ð² Postgres Pro |
ÐденÑиÑикаÑÐ¾Ñ Ð´ÐµÑкÑипÑоÑа Ñипа даннÑÑ ÑÑолбÑа, ÑникалÑнÑй ÑÑеди вÑÐµÑ Ð´ÐµÑкÑипÑоÑов Ñипов, оÑноÑÑÑÐ¸Ñ ÑÑ Ðº ÑаблиÑе. Ðн в оÑновном полезен Ð´Ð»Ñ ÑÐ¾ÐµÐ´Ð¸Ð½ÐµÐ½Ð¸Ñ Ñ Ð´ÑÑгими ÑкземплÑÑами ÑÐ°ÐºÐ¸Ñ Ð¸Ð´ÐµÐ½ÑиÑикаÑоÑов. (ÐонкÑеÑнÑй ÑоÑÐ¼Ð°Ñ Ð¸Ð´ÐµÐ½ÑиÑикаÑоÑа не опÑеделÑн и не гаÑанÑиÑÑеÑÑÑ, ÑÑо он оÑÑанеÑÑÑ Ð½ÐµÐ¸Ð·Ð¼ÐµÐ½Ð½Ñм в бÑдÑÑÐ¸Ñ Ð²ÐµÑÑиÑÑ .) |
ÐÑноÑиÑÑÑ Ðº ÑÑнкÑионалÑноÑÑи, оÑÑÑÑÑÑвÑÑÑей в Postgres Pro |
ÐÑли Ñелевой ÑÑÐ¾Ð»Ð±ÐµÑ ÑвлÑеÑÑÑ ÑÑолбÑом иденÑиÑикаÑии, знаÑение |
ÐÑли Ñелевой ÑÑÐ¾Ð»Ð±ÐµÑ ÑвлÑеÑÑÑ ÑÑолбÑом иденÑиÑикаÑии, знаÑение |
ÐÑли Ñелевой ÑÑÐ¾Ð»Ð±ÐµÑ ÑвлÑеÑÑÑ ÑÑолбÑом иденÑиÑикаÑии, наÑалÑное знаÑение внÑÑÑенней поÑледоваÑелÑноÑÑи, инаÑе â NULL. |
ÐÑли Ñелевой ÑÑÐ¾Ð»Ð±ÐµÑ ÑвлÑеÑÑÑ ÑÑолбÑом иденÑиÑикаÑии, Ñаг внÑÑÑенней поÑледоваÑелÑноÑÑи, инаÑе â NULL. |
ÐÑли Ñелевой ÑÑÐ¾Ð»Ð±ÐµÑ ÑвлÑеÑÑÑ ÑÑолбÑом иденÑиÑикаÑии, макÑималÑное знаÑение внÑÑÑенней поÑледоваÑелÑноÑÑи, инаÑе â NULL. |
ÐÑли Ñелевой ÑÑÐ¾Ð»Ð±ÐµÑ ÑвлÑеÑÑÑ ÑÑолбÑом иденÑиÑикаÑии, минималÑное знаÑение внÑÑÑенней поÑледоваÑелÑноÑÑи, инаÑе â NULL. |
ÐÑли Ñелевой ÑÑÐ¾Ð»Ð±ÐµÑ ÑвлÑеÑÑÑ ÑÑолбÑом иденÑиÑикаÑии, |
|
ÐенеÑиÑÑÑÑее вÑÑажение, еÑли Ñелевой ÑÑÐ¾Ð»Ð±ÐµÑ ÑвлÑеÑÑÑ Ð³ÐµÐ½ÐµÑиÑÑемÑм, инаÑе â NULL. |
|
Так как ÑÐ¸Ð¿Ñ Ð´Ð°Ð½Ð½ÑÑ
могÑÑ Ð¾Ð¿ÑеделÑÑÑÑÑ Ð² SQL множеÑÑвом ÑпоÑобов и Postgres Pro добавлÑÐµÑ Ð´Ð¾Ð¿Ð¾Ð»Ð½Ð¸ÑелÑнÑе ваÑианÑÑ, пÑедÑÑавление Ñипов в инÑоÑмаÑионной ÑÑ
еме Ð¼Ð¾Ð¶ÐµÑ Ð±ÑÑÑ Ð´Ð¾Ð²Ð¾Ð»Ñно ÑложнÑм. СÑÐ¾Ð»Ð±ÐµÑ data_type пÑедназнаÑен Ð´Ð»Ñ Ð¸Ð´ÐµÐ½ÑиÑикаÑии нижележаÑего вÑÑÑоенного Ñипа ÑÑолбÑа. Ð Postgres Pro ÑÑо ознаÑаеÑ, ÑÑо даннÑй Ñип опÑеделÑн в ÑÑ
еме ÑиÑÑемного каÑалога pg_catalog. ÐÑÐ¾Ñ ÑÑÐ¾Ð»Ð±ÐµÑ Ð¼Ð¾Ð¶ÐµÑ Ð±ÑÑÑ Ð¿Ð¾Ð»ÐµÐ·Ð½Ñм, еÑли пÑиложение ÑпоÑобно оÑобÑм обÑазом воÑпÑинимаÑÑ Ð²ÑÑÑоеннÑе ÑÐ¸Ð¿Ñ (напÑимеÑ, ÑоÑмаÑиÑоваÑÑ ÑиÑловÑе ÑÐ¸Ð¿Ñ Ð¿Ð¾-дÑÑÐ³Ð¾Ð¼Ñ Ð¸Ð»Ð¸ задейÑÑвоваÑÑ Ð´Ð°Ð½Ð½Ñе в ÑÑолбÑаÑ
ÑоÑноÑÑи). СÑолбÑÑ udt_name, udt_schema и udt_catalog вÑегда ÑказÑваÑÑ Ð½Ð° нижележаÑий Ñип даннÑÑ
ÑÑолбÑа, даже еÑли ÑÑÐ¾Ð»Ð±ÐµÑ Ð¾Ñнован на домене. (Так как в Postgres Pro вÑÑÑоеннÑе ÑÐ¸Ð¿Ñ Ð½Ðµ оÑлиÑаÑÑÑÑ Ð¾Ñ Ð¾Ð¿ÑеделÑннÑÑ
полÑзоваÑелем, в ÑÑом пÑедÑÑавлении вÑводÑÑÑÑ Ð¸ они. ÐÑо ÑаÑÑиÑение ÑÑандаÑÑа SQL.) ÐÑи ÑÑолбÑÑ Ð´Ð¾Ð»Ð¶Ð½Ñ ÑÑиÑÑваÑÑÑÑ, когда пÑÐ¸Ð»Ð¾Ð¶ÐµÐ½Ð¸Ñ Ð½Ñжно обÑабаÑÑваÑÑ Ð´Ð°Ð½Ð½Ñе в завиÑимоÑÑи Ð¾Ñ Ñипа, Ñак как в ÑÑом ÑлÑÑае не важно, оÑнован ли ÑÑÐ¾Ð»Ð±ÐµÑ Ð½Ð° домене. ÐÑли ÑÑÐ¾Ð»Ð±ÐµÑ Ð¾Ñнован на домене, на него ÑказÑваÑÑ ÑÑолбÑÑ domain_name, domain_schema и domain_catalog. ÐÑли Ð²Ñ Ñ
оÑиÑе ÑвÑзаÑÑ ÑÑолбÑÑ Ñ Ð¸Ñ
Ñипами даннÑÑ
и обÑабоÑаÑÑ Ð´Ð¾Ð¼ÐµÐ½Ñ ÐºÐ°Ðº оÑделÑнÑе ÑипÑ, Ð²Ñ Ð¼Ð¾Ð¶ÐµÑе запиÑаÑÑ coalesce(domain_name, udt_name) и Ñ. п.