Oracle metama'lumotlari - Oracle metadata

Oracle ma'lumotlar bazasi haqida ma'lumot beradi jadvallar, qarashlar, ustunlar va protseduralar ma'lumotlar bazasida. Ma'lumotlar haqidagi ushbu ma'lumot sifatida tanilgan metadata. U ikkita joyda saqlanadi: ma'lumotlar lug'ati jadvallari (o'rnatilgan ko'rinishlar orqali kirish mumkin) va metama'lumotlar registri.

Boshqalar relyatsion ma'lumotlar bazasini boshqarish tizimlari qo'llab-quvvatlash an ANSI - standart ekvivalenti deb nomlangan axborot sxemasi.

Meta-ma'lumotlarning ko'rinishlari

Ushbu ko'rishlarning umumiy soni Oracle versiyasiga bog'liq, ammo 1000 oralig'ida.

Oracle-ga kirishning asosiy ichki ko'rinishi RDBMS ma'lumotlar lug'ati jadvallari kam va quyidagilar:

  • ALL_OBJECTS - joriy foydalanuvchi uchun mavjud bo'lgan ma'lumotlar bazasidagi barcha ob'ektlar ro'yxati;
  • ALL_TABLES - joriy foydalanuvchiga kirish mumkin bo'lgan ma'lumotlar bazasidagi barcha jadvallar ro'yxati;
  • ALL_VIEWS - joriy foydalanuvchiga kirish mumkin bo'lgan ma'lumotlar bazasidagi barcha ko'rinishlar ro'yxati;
  • ALL_TAB_COLUMNS - ma'lumotlar bazasida mavjud foydalanuvchi kirish imkoniyatiga ega bo'lgan barcha ustunlar ro'yxati;
  • ALL_ARGUMENTS - amaldagi foydalanuvchi uchun qulay bo'lgan funktsiyalar va protseduralar argumentlarini ro'yxati;
  • ALL_ERRORS - saqlanayotgan barcha ob'ektlardagi (ko'rinishlar, protseduralar, funktsiyalar, paketlar va paketlar korpuslari) mavjud foydalanuvchiga kirish mumkin bo'lgan xatolar tavsiflarini ro'yxati;
  • ALL_OBJECT_SIZE - Oracle 5-versiyasi bilan orqaga qarab muvofiqligi uchun kiritilgan;
  • ALL_PROCEDURES - (Oracle 9 dan boshlab) joriy foydalanuvchi uchun mavjud bo'lgan barcha funktsiyalar va protseduralar (tegishli xususiyatlar bilan birga) ro'yxati;
  • ALL_SOURCE - saqlanayotgan ob'ektlarning matnini (ya'ni PL / SQL) joriy foydalanuvchiga kirish imkoniyatini tavsiflaydi;
  • ALL_TRIGGERS - joriy foydalanuvchiga kirish mumkin bo'lgan barcha triggerlarni ro'yxatlang.

Bunga qo'shimcha ravishda "USER_" prefiksi mavjud bo'lib, ular faqat joriy foydalanuvchiga tegishli bo'lgan ob'ektlarni (ya'ni metamalumotlarning yanada cheklangan ko'rinishi) va "DBA_" prefiksli ma'lumotlar bazasidagi barcha moslamalarni (ya'ni metama'lumotlarning cheklanmagan global ko'rinishini) ko'rsatadi. ma'lumotlar bazasi misoli). Tabiiyki, "DBA_" metama'lumotlar ko'rinishlariga kirish uchun maxsus imtiyozlar kerak.

1-misol: jadvallarni topish

Jadval nomida PATTERN bo'lgan barcha jadvallarni toping

  SELECT Egasi AS Sxema_ nomi, Table_Name  Dan   Hamma_Jadvallar  Qaerda  Table_Name Yoqdi '% PATTERN%'  Buyurtma  BILAN Egasi, Table_Name;

2-misol: ustunlarni topish

Ustun nomidagi ma'lum bir PATTERNga mos keladigan kamida bitta ustunli barcha jadvallarni toping

  SELECT Egasi AS Sxema_ nomi, Table_Name, Ustun nomi  Dan   All_Tab_Columns  Qaerda  Ustun nomi Yoqdi '% PATTERN%'  Buyurtma  BILAN 1,2,3;

3-misol: ustunlar qatorlarini hisoblash

Barcha jadvallarda PATTERNga mos keladigan ustun nomini o'z ichiga olgan qatorlarning umumiy sonini taxmin qiling (bu shunday) SQL * Plus maxsus skript)

  KOLONNI DUMMY YO'Q  KOMPYUTER JUM OF NUM_ROWS YOQDI DUMMY  Sindirish YOQDI DUMMY  SELECT   NULL DUMMY,   T.TABLE_NAME,   C.COLUMN_NAME,   T.NUM_ROWS  Dan   ALL_TABLES T,   ALL_TAB_COLUMNS C  Qaerda   T.TABLE_NAME = C.TABLE_NAME   VA C.COLUMN_NAME Yoqdi '% PATTERN%'   VA T.Egasi = C.Egasi  Buyurtma BILAN T.TABLE_NAME;

NUM_ROWS oxirgi tahlil qilinganida (va agar bo'lsa) jadvaldagi qatorlar sonini qayd etadi. Bu, ehtimol jadvaldagi hozirgi qatorlarning haqiqiy sonidan chetga chiqishi mumkin.

4-misol: ko'rish ustunlarini topish

Ko'rish ustunlarini toping

SELECT TABLE_NAME,    ustun_nomi,    dekodlash(v.DATA_TYPE,       'VARCHAR2',       v.DATA_TYPE || '(' || v.DATA_LENGTH || ')',       "NUMBER",       Dekodlash(v.ma'lumotlar_sozligi,            NULL,            v.DATA_TYPE,            0,                 v.DATA_TYPE,            v.DATA_TYPE || '(' || v.ma'lumotlar_sozligi || Dekodlash(v.ma'lumotlar hajmi,                                    NULL,                                    ')',                                    0,                                    ')' ,                                    ', ' || v.ma'lumotlar hajmi || ')')),       v.DATA_TYPE) ma'lumotlar turi Dan cols v, obj o Qaerda v.TABLE_NAME = o.ob'ekt nomi   VA o.ob'ekt turi = 'KO'RINISH'      VA v.table_name Yoqdi '% PATTERN%'   Buyurtma BILAN v.table_name, v.ustun_id;

Ogohlantirish: Bu char, varchar va vaqt tamg'asini o'z ichiga olgan bir nechta ma'lumotlar turiga nisbatan to'liq emas va juda qadimgi, eskirgan lug'at ko'rinishlaridan foydalanib, Oracle 5-ga qaytadi.

Jadval va ustun nomlarida pastki chiziqdan foydalanish

Pastki chiziq alohida SQL naqsh bitta belgiga mos keladi va agar siz aslida so'rovning LIKE bandida pastki chiziq belgisini qidirsangiz.

LIKE bayonotidan so'ng quyidagilarni qo'shing:

 Qochish '_'

Va keyin har bir tom ma'noda pastki chiziq ikki baravar pastki chiziq bo'lishi kerak: __

Misol

 LIKE '% __ G' ESCAPE '_'

Oracle metadata registrlari

Oracle mahsuloti Oracle Enterprise metadata menejeri (EMM) - bu ISO / IEC 11179 mos metadata registri. U boshqariladigan metama'lumotlarni ishlatilishi mumkin bo'lgan izchil formatda saqlaydi metadata nashr qilish. 2006 yil yanvar oyida EMM faqat Oracle konsalting xizmatlari orqali mavjud edi.

Shuningdek qarang

Tashqi havolalar