62.2. ÐÐ¾Ð¼Ð°Ð½Ð´Ñ BKI
createимÑ_ÑаблиÑÑoid_ÑаблиÑÑ[bootstrap] [shared_relation] [without_oids] [rowtype_oidoid] (имÑ1=Ñип1[FORCE NOT NULL | FORCE NULL ] [,имÑ2=Ñип2[FORCE NOT NULL | FORCE NULL ], ...])СоздаÑÑ ÑаблиÑÑ
имÑ_ÑаблиÑÑÑ Ð·Ð°Ð´Ð°Ð½Ð½Ñмoid_ÑаблиÑÑи ÑÑолбÑами, ÑказаннÑми в ÑÐºÐ¾Ð±ÐºÐ°Ñ .ÐепоÑÑедÑÑвенно
bootstrap.cподдеÑÐ¶Ð¸Ð²Ð°ÐµÑ ÑледÑÑÑие ÑÐ¸Ð¿Ñ ÑÑолбÑов:bool,bytea,char(1 байÑ),name,int2,int4,regproc,regclass,regtype,text,oid,tid,xid,cid,int2vector,oidvector,_int4(маÑÑив),_text(маÑÑив),_oid(маÑÑив),_char(маÑÑив),_aclitem(маÑÑив). ХоÑÑ Ð²Ð¾Ð·Ð¼Ð¾Ð¶Ð½Ð¾ ÑоздаÑÑ ÑаблиÑÑ, ÑодеÑжаÑие ÑÑолбÑÑ Ð¸ дÑÑÐ³Ð¸Ñ Ñипов, ÑÑо нелÑÐ·Ñ ÑделаÑÑ, пока не бÑÐ´ÐµÑ Ñоздан и заполнен ÑооÑвеÑÑÑвÑÑÑими запиÑÑми каÑалогpg_type. (ÐÑо по ÑÑÑи ознаÑаеÑ, ÑÑо ÑолÑко ÑÑи ÑÐ¸Ð¿Ñ ÑÑолбÑов могÑÑ Ð±ÑÑÑ Ð² ÑаблиÑÐ°Ñ , ÑоздаваемÑÑ Ð² Ñаком Ñежиме, Ñ Ð¾ÑÑ ÐºÐ°Ñалоги, ÑоздаваемÑе позже, могÑÑ ÑодеÑжаÑÑ Ð»ÑбÑе вÑÑÑоеннÑе ÑипÑ.)С Ñказанием
bootstrapÑаблиÑа бÑÐ´ÐµÑ Ñоздана ÑолÑко на диÑке; никакие запиÑи о ней не бÑдÑÑ Ð´Ð¾Ð±Ð°Ð²Ð»ÐµÐ½Ñ Ð²pg_class,pg_attributeи Ñ. д. Таким обÑазом, ÑаблиÑа не бÑÐ´ÐµÑ Ð´Ð¾ÑÑÑпна Ð´Ð»Ñ Ð¾Ð±ÑÑнÑÑ Ð¾Ð¿ÐµÑаÑий SQL, пока Ñакие запиÑи не бÑдÑÑ Ð´Ð¾Ð±Ð°Ð²Ð»ÐµÐ½Ñ Ñвно (командамиinsert). ÐÑо Ñказание пÑименÑеÑÑÑ Ð´Ð»Ñ ÑÐ¾Ð·Ð´Ð°Ð½Ð¸Ñ Ñамой ÑÑÑÑкÑÑÑÑpg_classи подобнÑÑ ÐµÐ¹.ÐÑли добавлено Ñказание
shared_relation, ÑаблиÑа ÑоздаÑÑÑÑ ÐºÐ°Ðº обÑаÑ. Ðна бÑÐ´ÐµÑ ÑодеÑжаÑÑ ÑÑÐ¾Ð»Ð±ÐµÑ OID, еÑли оÑÑÑÑÑÑвÑÐµÑ Ñказаниеwithout_oids. ÐополниÑелÑнÑм пÑедложениемrowtype_oidÐ¼Ð¾Ð¶ÐµÑ Ð±ÑÑÑ Ð·Ð°Ð´Ð°Ð½ OID Ñипа ÑÑÑоки (OID запиÑи вpg_type); еÑли он не Ñказан, OID генеÑиÑÑеÑÑÑ Ð°Ð²ÑомаÑиÑеÑки. (ÐÑедложениеrowtype_oidбеÑполезно, еÑли пÑиÑÑÑÑÑвÑÐµÑ Ñказаниеbootstrap, но его вÑÑ Ñавно можно добавиÑÑ Ð´Ð»Ñ Ð´Ð¾ÐºÑменÑиÑованиÑ.)-
openимÑ_ÑаблиÑÑ ÐÑкÑÑÑÑ ÑаблиÑÑ
имÑ_ÑаблиÑÑÐ´Ð»Ñ Ð´Ð¾Ð±Ð°Ð²Ð»ÐµÐ½Ð¸Ñ Ð´Ð°Ð½Ð½ÑÑ . ÐÑÐ±Ð°Ñ Ð´ÑÑÐ³Ð°Ñ ÑаблиÑа, оÑкÑÑÑÐ°Ñ Ð² даннÑй моменÑ, закÑÑваеÑÑÑ.-
close[имÑ_ÑаблиÑÑ] ÐакÑÑÑÑ Ð¾ÑкÑÑÑÑÑ ÑаблиÑÑ. ÐÐ¼Ñ ÑаблиÑÑ Ð¼Ð¾Ð¶ÐµÑ Ð·Ð°Ð´Ð°Ð²Ð°ÑÑÑÑ Ð´Ð»Ñ Ð¿ÐµÑепÑовеÑки, но ÑÑо не ÑÑебÑеÑÑÑ.
insert[OID =знаÑение_oid](знаÑение1знаÑение2...)ÐÑÑавиÑÑ Ð½Ð¾Ð²ÑÑ ÑÑÑÐ¾ÐºÑ Ð² оÑкÑÑÑÑÑ ÑаблиÑÑ, ÑÑÑановив
знаÑение1,знаÑение2и Ñ. д. в каÑеÑÑве знаÑений ÑÑолбÑов изнаÑение_oidв каÑеÑÑве OID. ÐÑлизнаÑение_oidÑавно нÑÐ»Ñ (0) или ÑÑо Ñказание опÑÑено, а ÑаблиÑа пÑи ÑÑом ÑодеÑÐ¶Ð¸Ñ OID, ÑÑÑоке назнаÑаеÑÑÑ ÑледÑÑÑий ÑвободнÑй OID.ÐнаÑÐµÐ½Ð¸Ñ NULL могÑÑ Ð·Ð°Ð´Ð°Ð²Ð°ÑÑÑÑ ÑпеÑиалÑнÑм клÑÑевÑм Ñловом
_null_. ÐнаÑениÑ, ÑодеÑжаÑие пÑобелÑ, Ð´Ð¾Ð»Ð¶Ð½Ñ Ð·Ð°ÐºÐ»ÑÑаÑÑÑÑ Ð² двойнÑе кавÑÑки.-
declare[unique]indexимÑ_индекÑаoid_индекÑаonимÑ_ÑаблиÑÑusingимÑ_меÑода_доÑÑÑпа(клаÑÑ_оп1имÑ1[, ...]) СоздаÑÑ Ð¸Ð½Ð´ÐµÐºÑ
имÑ_индекÑÐ°Ñ OID, ÑавнÑмoid_индекÑа, в ÑаблиÑеимÑ_ÑаблиÑÑ, Ñ Ð¼ÐµÑодом доÑÑÑпаимÑ_меÑода_доÑÑÑпа. ÐÐ½Ð´ÐµÐºÑ ÑÑÑоиÑÑÑ Ð¿Ð¾ полÑмимÑ1,имÑ2и Ñ. д., и Ð´Ð»Ñ Ð½Ð¸Ñ Ð¸ÑполÑзÑÑÑÑÑ ÑооÑвеÑÑÑвенно клаÑÑÑ Ð¾Ð¿ÐµÑаÑоÑовклаÑÑ_оп1,клаÑÑ_оп2и Ñ. д. ÐÑа команда ÑоздаÑÑ Ñайл индекÑа и добавлÑÐµÑ ÑооÑвеÑÑÑвÑÑÑие запиÑи в каÑалог, но не иниÑиализиÑÑÐµÑ ÑодеÑжимое индекÑа.-
declare toastoid_ÑаблиÑÑ_toastoid_индекÑа_toastonимÑ_ÑаблиÑÑ Ð¡Ð¾Ð·Ð´Ð°ÑÑ ÑаблиÑÑ TOAST Ð´Ð»Ñ ÑаблиÑÑ
имÑ_ÑаблиÑÑ. ТаблиÑе TOAST назнаÑаеÑÑÑ OID, ÑавнÑйoid_ÑаблиÑÑ_toast, а ÐµÑ Ð¸Ð½Ð´ÐµÐºÑÑ Ð½Ð°Ð·Ð½Ð°ÑаеÑÑÑ OID, ÑавнÑйoid_индекÑа_toast. Ðак и Ñdeclare index, заполнение индекÑа оÑкладÑваеÑÑÑ.build indicesÐаполниÑÑ Ð¸Ð½Ð´ÐµÐºÑÑ, обÑÑвленнÑе Ñанее.