CREATE COLLATION
CREATE COLLATION â ÑоздаÑÑ Ð¿Ñавило ÑоÑÑиÑовки
СинÑакÑиÑ
CREATE COLLATIONимÑ( [ LOCALE =локалÑ, ] [ LC_COLLATE =каÑегоÑиÑ_ÑоÑÑиÑовки, ] [ LC_CTYPE =каÑегоÑиÑ_Ñипов_Ñимволов] ) CREATE COLLATIONимÑFROMÑÑÑеÑÑвÑÑÑее_пÑавило
ÐпиÑание
CREATE COLLATION опÑеделÑÐµÑ Ð½Ð¾Ð²Ð¾Ðµ пÑавило ÑоÑÑиÑовки, иÑполÑзÑÑ Ð¿Ð°ÑамеÑÑÑ Ð»Ð¾ÐºÐ°Ð»Ð¸ опеÑаÑионной ÑиÑÑемÑ, либо копиÑÑÑ ÑÑÑеÑÑвÑÑÑее пÑавило.
ЧÑÐ¾Ð±Ñ ÑоздаÑÑ Ð¿Ñавило ÑоÑÑиÑовки, необÑ
одимо имеÑÑ Ð¿Ñаво CREATE в Ñелевой ÑÑ
еме.
ÐаÑамеÑÑÑ
имÑÐÐ¼Ñ Ð¿Ñавила ÑоÑÑиÑовки, возможно, дополненное ÑÑ ÐµÐ¼Ð¾Ð¹. ÐÑли ÑÑ ÐµÐ¼Ð° не Ñказана, пÑавило ÑоÑÑиÑовки ÑоздаÑÑÑÑ Ð² ÑекÑÑей ÑÑ ÐµÐ¼Ðµ. Ðаданное Ð¸Ð¼Ñ Ð¿Ñавила должно бÑÑÑ ÑникалÑнÑм в ÑÑой ÑÑ ÐµÐ¼Ðµ. (СиÑÑемнÑе каÑалоги могÑÑ ÑодеÑжаÑÑ Ð¿Ñавила ÑоÑÑиÑовки Ñ Ð¾Ð´Ð½Ð¸Ð¼ именем, но пÑедназнаÑеннÑе Ð´Ð»Ñ ÑазнÑÑ ÐºÐ¾Ð´Ð¸Ñовок, однако они бÑдÑÑ Ð¸Ð³Ð½Ð¾ÑиÑоваÑÑÑÑ, еÑли Ð¸Ñ ÐºÐ¾Ð´Ð¸Ñовка не ÑÐ¾Ð²Ð¿Ð°Ð´Ð°ÐµÑ Ñ ÐºÐ¾Ð´Ð¸Ñовкой Ð±Ð°Ð·Ñ Ð´Ð°Ð½Ð½ÑÑ .)
локалÑÐÑо кÑаÑÐºÐ°Ñ Ð·Ð°Ð¿Ð¸ÑÑ Ð´Ð»Ñ Ð¾Ð´Ð½Ð¾Ð²Ñеменной ÑÑÑановки
LC_COLLATEиLC_CTYPE. ÐÑли Ñказан ÑÑÐ¾Ñ Ð²Ð°ÑианÑ, задаÑÑ Ð»Ñбой из ÑÑÐ¸Ñ Ð¿Ð°ÑамеÑÑов оÑделÑно нелÑзÑ.каÑегоÑиÑ_ÑоÑÑиÑÐ¾Ð²ÐºÐ¸Ð£ÐºÐ°Ð·Ð°Ð½Ð½Ð°Ñ Ð»Ð¾ÐºÐ°Ð»Ñ Ð¾Ð¿ÐµÑаÑионной ÑиÑÑÐµÐ¼Ñ ÑÑÑанавливаеÑÑÑ Ð² каÑеÑÑве каÑегоÑии локали
LC_COLLATE. ÐÑа Ð»Ð¾ÐºÐ°Ð»Ñ Ð´Ð¾Ð»Ð¶Ð½Ð° бÑÑÑ Ð¿Ñименимой к кодиÑовке ÑекÑÑей Ð±Ð°Ð·Ñ Ð´Ð°Ð½Ð½ÑÑ . (ТоÑнÑе пÑавила опиÑÐ°Ð½Ñ Ð² CREATE DATABASE.)каÑегоÑиÑ_Ñипов_ÑÐ¸Ð¼Ð²Ð¾Ð»Ð¾Ð²Ð£ÐºÐ°Ð·Ð°Ð½Ð½Ð°Ñ Ð»Ð¾ÐºÐ°Ð»Ñ Ð¾Ð¿ÐµÑаÑионной ÑиÑÑÐµÐ¼Ñ ÑÑÑанавливаеÑÑÑ Ð² каÑеÑÑве каÑегоÑии локали
LC_CTYPE. ÐÑа Ð»Ð¾ÐºÐ°Ð»Ñ Ð´Ð¾Ð»Ð¶Ð½Ð° бÑÑÑ Ð¿Ñименимой к кодиÑовке ÑекÑÑей Ð±Ð°Ð·Ñ Ð´Ð°Ð½Ð½ÑÑ . (ТоÑнÑе пÑавила опиÑÐ°Ð½Ñ Ð² CREATE DATABASE.)ÑÑÑеÑÑвÑÑÑее_пÑавилоÐÐ¼Ñ ÐºÐ¾Ð¿Ð¸ÑÑемого ÑÑÑеÑÑвÑÑÑего пÑавила ÑоÑÑиÑовки. Ðовое пÑавило ÑоÑÑиÑовки полÑÑÐ¸Ñ Ñе же ÑвойÑÑва, ÑÑо и ÑÑÑеÑÑвÑÑÑее, но бÑÐ´ÐµÑ Ð½ÐµÐ·Ð°Ð²Ð¸ÑимÑм обÑекÑом.
ÐамеÑаниÑ
ÐÐ»Ñ ÑÐ´Ð°Ð»ÐµÐ½Ð¸Ñ ÑозданнÑÑ
полÑзоваÑелем пÑавил ÑоÑÑиÑовки пÑименÑеÑÑÑ ÐºÐ¾Ð¼Ð°Ð½Ð´Ð° DROP COLLATION.
ÐополниÑелÑнÑе ÑÐ²ÐµÐ´ÐµÐ½Ð¸Ñ Ð¾ поддеÑжке пÑавил ÑоÑÑиÑовки можно найÑи в Разделе 22.2.
ÐÑимеÑÑ
Создание пÑавила ÑоÑÑиÑовки из локали опеÑаÑионной ÑиÑÑÐµÐ¼Ñ fr_FR.utf8 (пÑедполагаеÑÑÑ, ÑÑо кодиÑовка ÑекÑÑей Ð±Ð°Ð·Ñ Ð´Ð°Ð½Ð½ÑÑ
â UTF8):
CREATE COLLATION french (LOCALE = 'fr_FR.utf8');
Создание пÑавила ÑоÑÑиÑовки из Ñже ÑÑÑеÑÑвÑÑÑего:
CREATE COLLATION german FROM "de_DE";
Ðногда Ñдобно иÑполÑзоваÑÑ Ð² пÑиложениÑÑ Ð¸Ð¼ÐµÐ½Ð° пÑавил ÑоÑÑиÑовки, не завиÑÑÑие Ð¾Ñ Ð¾Ð¿ÐµÑаÑионной ÑиÑÑемÑ.
СовмеÑÑимоÑÑÑ
ÐпеÑаÑÐ¾Ñ CREATE COLLATION опÑеделÑн в ÑÑандаÑÑе SQL, но его дейÑÑвие огÑаниÑено копиÑованием ÑÑÑеÑÑвÑÑÑего пÑавила ÑоÑÑиÑовки. СинÑакÑÐ¸Ñ ÑÐ¾Ð·Ð´Ð°Ð½Ð¸Ñ Ð½Ð¾Ð²Ð¾Ð³Ð¾ пÑавила ÑоÑÑиÑовки пÑедÑÑавлÑÐµÑ Ñобой ÑаÑÑиÑение Postgres Pro.