Tuesday, March 15, 2016

Ogogdol zohion baiguulalt



Батлав. МХМБСТэнхмийн эрхлэгч ........................................................../ О.Мөнхбаяр/
Лекц –  1  Өгөгдлийн сангийн зохион байгуулалт
Өгөгдлийн сангийн тухай
Өгөгдлийн сан. Логик уялдаа холбоотой өгөгдлийн элементүүдийн нэгдсэн цуглуулга юм. Өгөгдлийн сан нь өмнө нь тус тусдаа хадгалагдсан файлуудыг олон янзаар хэрэглэгдэх өгөгдлөөр хангах логик элементүүдийн цуглуулгаруу нэгтгэдэг. Тиймээс өгөгдлийн сан нь нэгж болон нэгжийн хоорондын харилцаа холбоог дүрсэлсэн өгөгдлийн элементүүдийг агуулдаг. Тодорхой утга агуулгатай, дүрслэж болох мэдээллийг өгөгдөл гэнэ.
Жишээлбэл: хүний нэр, утас, хаяг, гэх мэт өгөгдлийг дэвтэр, компьютерийн дискэнд бичиж, хадгалж болно. Энэ нь өгөгдлийн сангийн ерөнхий тодорхойлолт болох бөгөөд илүү нарийвчилж тодорхойлбол өгөгдлийн сан дараах шинж чанарыг агуулдаг.
Үүнд: • Өгөгдлийн сан нь ямар нэгэн бодит орчныг, өөрөөр хэлбэл өгөгдлийн санг зохион байгуулахаар судлаж байгаа тодорхой орчныг дүрсэлнэ • Өгөгдлийн сан нь логик уялдаатай өгөгдлийн цуглуулга. Иймд хоорондоо авцалдаагүй, энд тэндээс цуглуулсан өгөгдлүүд өгөгдлийн сан болж чадахгүй. • Өгөгдлийн санг тодорхой зориулалттай загварчилж, байгуулна. Өгөгдлийн сангийн хэмжээ болон бүтэц дурын байж болно. Өгөгдлийн сангийн төрөл • Үйл ажиллагааны өгөгдлийн сан • Хуваарилагдсан өгөгдлийн сангууд • Гадаад өгөгдлийн сан • Гипермедиа өгөгдлийн сангууд Үйл ажиллагааны өгөгдлийн сан. Байгууллагын үйл ажиллагаа болон процессуудыг дэмжихэд шаардлагатай дэлгэрэнгүй өгөгдөо хадгалагдсан байдаг.
Жишээлбэл: хэрэглэгчдийн өгөгдлийн сан, хүний нөөцийн өгөгдлийн сан, бүтээгдэхүүний өгөгдлийн сан, бусад төрлийн бизнесийн үйл ажиллагаануудын өгөгдлийг нэгтгэсэн өгөгдлийн сан гэх мэт...
Хуваарилагдсан өгөгдлийн сангууд Хуваарилагдсан өгөгдлийн сангууд гэдэг нь олон газар байрлаж байгаа серверүүд дээр хадгалагдсан өгөгдлийн сангуудын хуулбар эсвэл хэсгүүдийг хэлдэг
Давуу тал нь үнэ цэнэтэй өгөгдлийн хамгаалалт болохоос гадна өгөгдөл жижиг хэмжээний өгөгдлийн сангуудад хуваарилагддаг. Байрлал бүр өөрсдийн өгөгдлөө удирдах бөгөөд бүх байрлалууд бусад газар байрласан байгаа өгөгдөлрүү хандах боломжтой. Байрлал болгон дээр байгаа өгөгдлийн сангийн гүйцэтгэл сайжирч байдаг.
Хувиарлагдсан өгөгдлийн сан нь магадгүй үйл ажиллагааны эсвэл шинжилгээний өгөгдлийн сангууд гэх мэт бусад өгөгдлийн сангийн хуулбар байж болно. Гадаад өгөгдлийн сан Гадаад өгөгдлийн сан нь Арилжааны онлайн серверүүдээс эсвэл World Wide Web-ээс авдаг төлбөртэй авдаг мэдээллийн сангууд юм. Вэб сайтууд нь гипермедиа өгөгдлийн сан доторх олон төрлийн баримт файлуудын холбоос бүхий маш олон янзын дуусашгүй мэдээллийн хуудсуудаар хангаж байдаг. Өгөгдлүүд нь эдийн засгийн статистикийн хэлбэрээр болон хүн амзүйн статистикын зорилгоор ашиглах бүрэн боломжтой байдаг. Эсвэл мэдээллийг харах, абстракт болон хуулбарыг нь татаж авах хэлбэрээр ашиглагдах боломжтой байдаг. ” Гадаад өгөгдлийн сан нь World Wide Web болон бусад гадаад эх сурвалжаас онлайнаар сүлжээ ашиглан холбогддог өгөгдлийн сангийн төрлийг хэлнэ Гипермедиа өгөгдлийн сангууд Гипермедиа өгөгдлийн сангууд нь Гипер холбоосоор холбогдсон мультимедиа буюу текст, график, видео клипүүд болон аудио бичлэгүүд бүхий хуудаснуудаас бүрддэг. Уялдаа холбоотой өгөгдлийн бичлэгүүдээс илүүтэйгээр уялдаа холбоотой гипермедиа хуудасны элементүүдийг агуулж байдаг. Өгөгдлийн сан үүсгэх Ямар ч өгөгдлийн сантай програм байсан хамгийн түрүүнд тухайн програмдаа зориулсан өгөгдлийн сангаа үүсгэх хэрэгтэй болдог. Өгөгдлийн санг мэдээж ӨСУС дотроо үүсгэх ба ихэнхдээ програмийнхаа нэртэй адилханаар нэрлэдэг нь өөр бусад програмуудын өгөгдлийн сангуудтай андуурахгүй гэсэн хэрэг юм. Жишээ нь Pizza Payment гэдэг програм байлаа гэж бодоход өгөгдлийн сан нь pizza_payment байх жишээтэй. Өгөгдлийн сан нь өмнө нь тус тусдаа хадгалагдсан файлуудыг олон янзаар хэрэглэгдэх өгөгдлөөр хангах логик элементүүдийн цуглуулгаруу нэгтгэдэг. Тиймээс өгөгдлийн сан нь нэгж болон нэгжийн хоорондын харилцаа холбоог дүрсэлсэн өгөгдлийн элементүүдийг агуулдаг. Өгөгдлийн санг байгуулж, хөгжүүлэх Өгөгдлийн сангийн администратор (DBA) нь ү аливаа байгууллагын өгөгдлийн санг байгуулж, хөгжүүлэх үүргийг хүлээнэ. Үндсэн үүрэг нь байгууллагын өгөгдлийн сангуудын нэгдмэл байдал, хамгаалалт, аюулгүй байдлыг хангах, өгөгдөл тодорхойлох хэлийг ашиглан өгөгдлийн агуулга, холбоо хамаарал,бүтцийг байгуулж, тодорхойлох бөгөөд тэдгээр тодорхойлолтууд нь өгөгдлийн толь бичигт эсвэл мета өгөгдлийн агуулахад хадгалагдана. Өгөгдлийн толь бичиг гэдэг нь өгөгдлийн тухай өгөгдлийг (мета өгөгдөл) агуулдаг бөгөөд тусгай програм хангамжын бүрдэл хэсэг дээр түшиглэн өгөгдлийн тодорхойлолтуудын баазыг удирддаг. Идэвхитэй эсвэл идэвхигүй байж болно Өгөгдлийн сангийн хөгжүүлэлт нь дараах байдлаар хийгддэг: 1. Өгөгдлийн төлөвлөлт – Байгууллагын бизнесийн үйл ажиллагааны загварыг дүрслэх 2. Шаардлагын тодорхойлолт - Байгууллагын үйл ажиллагааны эцсийн хэрэглэгчдийн мэдээллийн хэрэгцээ шаардлагыг тодорхойлох 3. Схемчилсэн загвар – Хэрэглэгчийн бүх мэдээллийн хэрэгцээ шаардлагыг тодорхой загвараар илэрхийлэх. /Нэгжийн холбоосын диаграм гэх мэт загвараар/ 4. Логик загвар - Схемчилсэн загварыг ӨСУС-ийн өгөгдлийн загварлуу хөрвүүлэх 5. Бодит загвар – Өгөгдлийн хадгалалтын бүтэц болон хандалтын арга замыг тодорхойло
Өгөгдлийн санг удирдах систем (ӨСУС) Таны програм хэрэглэгчийн явуулсан хүсэлтийн дагуу автомтаар өгөгдлийн сангаас мэдээллийг хайж, тодорхой формат, тодорхой хугацаа, тодорхой шүүлттэйгээр үр дүнгүүдийг буцааж өгдөг байх ёстой. Аль болох бага хугацаа, аль болох чанартай үр дүн, мөн мэдээж нууцлал хамгаалалт. Олон олон програмууд өгөгдлийн сан гэдэг зүйлээ мөн олон олон аргаар шийдсэн байдаг.
Жишээ нь энгийн текст файлын бүтэц дээр шийдсэн нь ч байдаг.
Гэвч энэ нь дийлэнхдээ хугацаа болон нууцлал тал дээр доголдол үүсгэх явцгүй санаа юм.
Тиймээс зайлшгүй database management system буюу өгөгдлийн санг удирдах систем гэдэг зүйл байх шаардлагатай болдог. Энэ нь өгөгдлийг дэс даралаасан, эмх цэгцтэйгээр хадгалах, богино
хугацаанд хайх, нууцлал хамгаалалтыг сайжруулах гэх мэт зүйлсийг автоматаар шийдэж өгсөн байдаг. Мөн бусад програмчлалуудтай чөлөөтэй уялдан ажилладаг, хөгжүүлэгчид хүндрэлтэй бус байх гэх мэт давуу талуудыг агуулдагаараа энгийн гар аргаар өгөгдлийн сангийн систем хийхээс хавьгүй илүү уян хатан, хүчирхэг сонголт болдог.


















































Батлав. МХМБСТэнхмийн эрхлэгч ........................................................../ О.Мөнхбаяр/

Лекц –  2  Өгөгдлийн загвар
Өгөгдлийн сангийн загвар
Өгөгдлийн сангийн зарчим, объектийн холбоосын шинжилгээ, өгөгдлийг энгийн хэлбэрт шилжүүлэх
Өгөгдлийг оновчтой, зөв зохион байгуулалттай загварчлах нь чухал. Зөв зохион байгуулахын тулд өгөгдлийн зохион байгуулалтанд тавигддаг үндсэн зарчмуудыг мэдэж, баримтлах ёстой.
Баримтлах зарчим
·         энгийн - өгөгдлийг бие даасан агуулгатай, өөр ямар нэгэн агуулгатай мэдээлэлтэй нийлүүлж хадгалахгүй байх,
·         шууд хандах боломжтой - анхдагч хувилбараар хадгалж, ямар нэгэн нэмэлт боловсруулалт хийхгүйгээр гаргаж авах боломжийг бүрдүүлэх,
·         өгөгдлийн давхцал үүсгэхгүй байх-атрибут болон бичлэгийн давхцал үүсэхээргүйгээр загварчлах,
·         өгөгдөл ба түүнийг боловсруулах ПХ-ийн үл хамаарал - өгөгдөл нь түүнийг боловсруулах ПХ-аас үл хамаарах, эсрэгээр ПХ нь өгөгдлөөс аль болохоор бага хамааралтай байх 
Өгөгдлийн загварыг ПХ-ийн системийн шинжилгээ, зохиомжийг хийх уламжлалт аргын дагуу объектийн холбоосын диаграм ба түүний өргөтгөл, эсвэл өгөгдлийн ерөнхий схем, харин объект хандлагат шинжилгээ хийх ЮМЛ аргын дагуу класс диаграмыг хэрэглэж тус тус дүрсэлж үзүүлдэг.  
Объектийн холбоосын шинжилгээ
Тус шинжилгээний арга нь системийг дээрээс нь доош шинжилж задлах аргад багтдаг. Энэ нь хөгжүүлэх ӨС-гийн системд хамаарах объектүүдээ ерөнхийд нь ойлгож мэдсэний үндсэн дээр объектүүдээ атрибутын түвшин хүртэл задлан шинжилгээ хийнэ гэсэн үг юм. Объектийн холбоосын шинжилгээ хийх үед атрибут болон объектүүдийн хоорондох холбоосыг шинжилдэг.
Атрибутын төрөл, атрибутын төрлийн шинжилгээ    
Атрибутуудыг доорх байдлаар  төрөлжүүлдэг
 энгийн / нийлмэл
 нэг / олон утгат
 хадгалах / гаргаж авах
 тэг утгат. 
Энгийн / нийлмэл атрибут
Нийлмэл атрибут нь бие даасан утгатай  хэсгүүдээс тогтдог. Тэдгээрийг бүхлээр нь нэг нэгж гэж тооцож хадгалдаг боловч боловсруулалтын үед шаардлагатай бол задалж аль ч хэсэг рүү хандах боломжтой. Жишээ нь: оюутны код нь сурч буй салбарын код, сургуульд элссэн он, сургалтын зэрэглэл, оюутны дугаар зэрэг 4 төрлийн мэдээлэл агуулдаг нийлмэл атрибут. Тус нийлмэл атрибутыг ӨС-гийн загварт дараах маягаар ялгаж тэмдэглэдэг.
·         задаргаагий нь хашилтанд оюутны код (тэнхмийн код, элссэн он, сургалтын зэрэглэл, оюутны дугаар) гэж заах эсвэл задаргааг заахгvй атрибутын нэрийг дугуй хашилтанд бичиж (оюутны код) бас болно.
Энгийн атрибут нь задардаггүй, бүхлээрээ нэг утга санааг агуулж явдаг. Жишээ нь: хичээлийн нэр, кредит гэсэн атрибутууд.
ӨС-гийн загварыг гаргахдаа анхаарах зүйлс!!!
Атрибутыг энгийнээр тодорхойлж байх, энэ нь өгөгдлийн элемент рүү шууд хандах боломжийг олгодог. Нийлмэл атрибутыг элементээр задлахын тулд дэд мөр салгах нэмэлт боловсруулалт шаардагдах учраас аль болохоор нийлмэл атрибут тодорхойлохгүй байх
Нэг утгат / олон утгат атрибут
Нэг утгат атрибут нь объектийн нэг төлөөллийн хувьд нэг л утга авдаг атрибут.
Олон утгат атрибут нь объектийн нэг төлөөллийн хувьд олон утга авч болох атрибут. Хичээл объект дэх хичээлийн кодыг тус объектийн төлөөлөл бүрийг ялгах түлхүүр гэж үзвэл, түүний хувьд хичээлийн хэлбэр нь лекц, семинар, лаборатори эсвэл бие даалт гэсэн олон утгуудтай, мөн хичээлийн хэлбэрээ дагаад 7 хоногт орох цаг өөр утгуудыг авна. Олон утгат атрибутыг угалзан {} хашилтанд заадаг.
“Хичээл” объект
Хичээлийн код
Хичээлийн нэр
Кредит
Өмнөх холбоо
{Хичээлийн хэлбэр}
{Орох цаг}
SW102
Комп.хэрэглээ
3
-
лекц
2
SW102
Комп.хэрэглээ
3
-
лаб
2
MT101
Математик 1
4
-
лекц
4
MT101
Математик 1
4
-
сем
2
ӨС-гийн загварыг гаргахдаа анхаарах зүйлс!!!
Объектийн нэг төлөөллийн хувьд атрибутууд нь нэг утгатай байхаар харьцааг тодорхойлох, харьцаанаас олон утгат атрибутуудыг салгаж загварчилах нь зөв. Салгахдаа объектийн түлхүүр элементийг тодорхойлж, түүний хувьд нэг утга болон олон утга авах атрибутуудыг ялган тодорхойлно. Салгах нь олон утгаа дагаж давхцаж хадгалагдаж байгаа нэг утгатай атрибутуудыг тусдаа харьцаа болгон хадгалж, ӨС-гийн хэмжээг багасгах ач холбогдолтой. 
Хичээл объектийг салгахад доорх 2 хүснэгт үүснэ.
1.      Хичээл
Хичээлийн код
Хичээлийн нэр
Кредит
Өмнөх холбоо
SW102
Комп.хэрэглээ
3
-
MT101
Математик 1
4
-
1.       Хичээлийн хэлбэр
Хичээлийн код
Хичээлийн хэлбэр
Орох цаг
SW102
лекц
2
SW102
лаб
2
MT101
лекц
4
MT101
сем
2

Гаргаж авах / хадгалах атрибут
Зарим тохиолдолд хоёр ба түүнээс дээш атрибутууд хоорондоо хамааралтай байдаг. Хадгалах атрибут нь мэдээллийн эх сурвалж, өөрөөр хэлбэл мэдээллийн анхдагч хэлбэрийг хадгалдаг. Харин гаргаж авах атрибут нь ямар нэгэн илэрхийллийн үр дүнг хадгалдаг бөгөөд ихэвчлэн хадгалсан атрибутыг оролцуулан илэрхийллийг бичдэг. Жишээ нь:  хүний төрсөн огноо гэсэн атрибут нь хадгалах атрибут, харин хүний нас атрибутыг тухайн огноогоос төрсөн огноог хассан илэрхийлэл бичиж гаргаж авна.  
ӨС-гийн загварыг гаргахдаа анхаарах зүйлс!!!
ӨС-гийн загварт эх өгөгдлийг хадгалахыг эрмэлзэх, өөрөөр хэлбэл харьцаанд хадгалах атрибутуудыг тодорхойлох нь зөв. ӨС-гийн загварт гаргаж авах атрибутыг хадгалах үед хэсэг цаг хугацааны дараа түүний утга өөрчлөгдөхөд ӨС –д эдгээр утгыг засварлах ажиллагаа байнга хийгдэх болно. Гаргаж авах атрибутыг кверид (query) томъёолон тодорхойлж тайлан нэгтгэлд оруулж болно.   
Тэг утгат атрибут
Объект дэх зарим төлөөллийн атрибутын утга тодорхойгүй байдаг (жишээлбэл, хичээлийн өмнөх холбоо). Тэг утгат атрибут гэдэг нь тухайн атрибутын ихэнхбичлэгийн хувьд утгыг нь тодорхойлох боломжгүй атрибут юм. Тодорхойлох боломжгүй утгыг тэг утга эсвэл null гэнэ. Null нь тооны тэгээс (0), текстийн хоосон зайнаас (““) ялгаатай (Null<> 0  /  Null<>””).
Жишээ нь: Оюутны гэр бүлийн судалгаагаар ихэнх оюутнууд эхнэр эсвэл нөхөргүй гэж гарахад, гэр бүлийн мэдээллийг хадгалах атрибутуудын утга тэг байна. 
Оюутны код
Овог нэр
Мэргэжлийн код
Эхнэр/нөхрийн овог нэр
Хаана ажилладаг
Эрхэлдэг ажил
SW99B027
Д.Болор
D4802000
Р. Саруул
 КТМС
оюутан
SW99D028
Х.Тамир
D4802000



SW99B029
M.Сувд
D4802000
М. Баяр
Датаком
инженер
SW99B030
Г. Навчаа
D4802000



SW99B031
А.Төгсөө
D4802000



 ӨС-гийн загварыг гаргахдаа анхаарах зүйлс!!!
Харьцаанаас тэг утгат атрибутыг салгаж загварчилах нь ӨС-г хадгалах зайг гамтай ашиглах ач холбогдолтой. Хэрэв атрибут нь цөөн бичлэгийн хувьд тэг утга авахаар бол тэг утгат атрибутыг салгах шаардлагагүй. Салгалтын үр дүнд харьцаанд тэг утга аваагүй атрибутууд нэг тусдаа, тэг утга авах боломжтой атрибутууд бас нэг тусдаа хадгалагдана.
1.      Оюутан
Оюутны код
Оюутны овог нэр
Мэргэжлийн код
SW99B027
Д.Болор
D4802000
SW99D028
Х.Тамир
D4802000
SW99B029
M.Сувд
D4802000
SW99B030
Г. Навчаа
D4802000
SW99B031
А.Төгсөө
D4802000
 Оюутны гэр бүл
Оюутны код
Эхнэр/нөхрийн овог нэр
Хаана ажилладаг
Эрхэлдэг ажил
SW99B027
Р. Саруул
 КТМС
оюутан
SW99B029
М. Баяр
Датаком
инженер
Холбоос,  холбоосын төрөл, холболт зохион байгуулах аргууд
Холбоосын төрөл нь объектийн нэг төлөөлөл нөгөө объектийн төлөөлөлтэй ямар харьцаатай холбогдож байгааг илэрхийлдэг. Холбоос нь
·         нэг нь нэгтэй 1:1/(0)
·         нэг нь олонтой 1:N/(0)
·         олон нь олонтой M:N/ (0) төрлүүд байдаг. Бүх холболтын төрлүүдэд тэгтэй холбогдох тохиолдол давхар байж болдог.
Холболтыг дараах 2 аргаар зохион байгуулдаг. Нэг нь нэгтэй, нэг нь олонтой гэсэн холболтын төрөлтэй объектүүдийг холбохдоо объектүүдийн аль нэг рүү нь гадаад түлхүүр атрибут нэмж авах, харин олон нь олонтой тохиолдолд холбоосын олонлогийг агуулсан харьцаа шинээр үүсгэдэг.
Нэг хичээлийг олон хэлбэрээр заадаг, хичээлийн хэлбэрийн нэг төлөөлөл нэг л хичээлд хамаарна, Иймээс Хичээл ба Хичээлийн хэлбэр гэсэн 2 объектийн хооронднэг нь олонтой холболт үүснэ. Өгөгдлийн давхацлыг бага үүсгэх үүднээс хичээлийн кодыг Хичээлийн хэлбэр объект рүү гадаад түлхүүрээр авч 2 хүснэгтийг холбоно.

Нэг оюутан олон хичээл үзнэ, нэг хичээлийг олон оюутан үздэг учраас Хичээл ба Оюутан гэсэн 2 объектийн хооронд олон нь олонтой холболт үүснэ.
Олон нь олонтой холбоосыг шинэ объект үүсгэж салгах ба Оюутны хичээл сонголт гэсэн объектийг шинээр үүсгэж оюутан тухайн хичээлийг хэзээ үзэхээр сонголт хийсэн тухай мэдээллийг хадгална.


Батлав. МХМБСТэнхмийн эрхлэгч ........................................................../ О.Мөнхбаяр/
Лекц –  3 Өгөгдлийн сангийн зарчим ба архитектур хэлбэржүүлэлт
Өгөгдлийг энгийн хэлбэрт шилжүүлэх                                                                                                          Тус шинжилгээний арга нь доороос нь дээш нь шинжлэх аргад багтдаг, өөрөөр хэлбэл мэдэгдэж байгаа нарийн зүйлсээс системд хамаарах дэд систем, объект зэргийг ерөнхийлж тогтооход оршино. Энгийн бус хэлбэрийн өгөгдлийн цуглуулгыг 3 алхмаар шинжилсний үр дүнд объект ба объектүүдэд хамаарах атрибутыг тодорхойлж ӨС-гийн загварыг гаргана.                                                    1-р энгийн хэлбэрийн шинжилгээгээр давтагдсан бүлэг элемент салгах, тэг утгат элементийг салгах, давтагдсан утгатай элемент салгаж, үр дүнд нь 2 хэмжээстэй, өгөгдлийн давхцалгүй харьцаануудыг үүсгэж, тэдгээрт байж болох түлхүүрийг зааж тодорхойлдог.                                   Давтагдсан бүлэг элемент - объектийн нэг төлөөллийн хувьд нэг нь олон гэсэн хамаарал үүсгэж байгаа элементүүд давтагдсан бүлэг (ДБЭ) үүсгэнэ. Давтагдсан утгатай элемент (ДУЭ) - хүснэгтийн нэг баганы хувьд тогтмол  хэдхэн утга авах элементүүдийг хэлнэ.
1-р энгийн хэлбэрийн харьцаанд анхдагч түлхүүр тодорхойлдоггүй, анхдагч түлхүүр болж магадгүй түлхүүрийг тодорхойлж, түүнийг байж болох түлхүүр гэж нэрлэдэг. 
2-р энгийн хэлбэрийн шинжилгээгээр элемент хоорондын функциональ хамаарлыг тодорхойлох, функциональ бүрэн хамаарлыг тодорхойлох, функциональ бүрэн бус хамааралтай элементийг салгаж, үр дүнд нь анхдагч түлхүүрээсээ функциональ бүрэн хамааралтай өгөгдлийн элементүүдийг агуулсан харьцаанууд үүсгэдэг.
А, В,  … нь нэг харьцааны элементүүд байх үед В-ийн утга А-ийн утгаар ялгаатай тодорхойлогдох, эсвэл эсрэгээр А-гийн утга нь В – гийн утгыг бүрэн тодорхойлж чадаж байвал В нь А - аас функциональ хамааралтай байна.
Хэрэв элемент нь зөвхөн байж болох түлхүүр элементээс хамаарч байвал түүнийг функциональ бүрэн хамааралтай элемент гэнэ 
Хэрэв элемент нь байж болох түлхүүр элементээс өөр ямар нэгэн элементээс хамаарч байвал түүнийг функциональ бүрэн бус хамааралтай элемент гэнэ
3-р энгийн хэлбэрийн шинжилгээгээр дамжсан холбоосыг тодорхойлж салгадаг. Хэрэв А, В, С нь Х харьцааны элементүүд байх үед В нь А – аас, С нь В – ээс тус тус функциональ хамаарч байгаа үед  С нь В – р дамжиж  А –аас хамаарч байна гэж үздэг ба үүнийг дамжсан холбоос гэнэ.

Өгөгдөл, өгөгдлийн сан, өгөгдлийн санг удирдах систем, өгөгдлийн сангийн систем 
ҮЗЭГДЭЛ, ҮЙЛ ЯВДАЛ        --->       МЭДЭЭЛЭЛ    --->         ӨГӨГДӨЛ
            Хүн хүрээлж байгаа орчинд болж буй үзэгдэл, үйл явдал болон зүйлсийн талаарх мэдлэгийг ямар нэгэн зорилгоор төрөл бүрийн хадгалуур дээр мэдээлэл хэлбэрээр цуглуулж, боловсруулж ирсэн. Мэдээллийн хэмжээ асар их өссөнтэй холбоотой мэдээллийг авсаархан хадгалж, хурдан боловсруулах шаардлага гарсан. Үүний тулд тооцоолон бодох машин, компьютерийг бүтээсэн бөгөөд мэдээллийг компьютерт хадгалж, дамжуулж, боловсруулж болохуйц хэлбэрээр дүрсэлж сурсан. Компьютерт буулгасан тэдгээр мэдээллийн дүрслэлийг өгөгдөл гэж нэрлэсэн. Компьютерт дүрсэлж болох мэдээлэл нь
n  текст (ASCIIтэмдэгтүүд:a-Я, a-Z,0-9, тусгай тэмдэгтүүд)
n  тоо (0-9, тоон тэмдэгтүүд)
n  зураг,дүрс, видео бичлэг (зураг, мультимедиа файл)
n  дуу, авиа (дууны файл)
зэргүүд одоогоор байна. Хоорондоо холбоо бүхий өгөгдлүүдийн цогцыг өгөгдлийн сан (ӨС) гэнэ. ӨС-г тодорхойлох, үүсгэх, боловсруулахад зориулсан програмын цогцыг өгөгдлийн сан удирдах систем (ӨСУС),  харин ӨС нь ӨСУС-ийнхээ хамт  өгөгдлийн сангийн систем (ӨСС) гэж нэрлэгдэнэ.
Хоёр хэмжээст хүснэгт 
ӨС-г зохион байгуулахад хэрэглэдэг харьцаа, иерархи, сүлжээ гэсэн 3 төрлийн загвар байдгаас харьцаа өгөгдлийн сангийн загварыг голчлон хэрэглэдэг. Харьцаа өгөгдлийн сан нь өгөгдлийн хэд хэдэн харьцаанаас тогтддог бөгөөд тэдгээр нь хадгалах мэдээллийн агуулгатайгаа уялдан нэрлэгдсэн байдаг. Харьцаа нь багана ба мөр гэсэн 2 хэмжээст хүснэгтээр дүрслэгддэг бөгөөд баганууд нь өгөгдлийн элементүүд эсвэл атрибутуудыг илэрхийлж, баганад харгалзах мөрүүдэд өгөгдлийн утгуудыг бичиж хадгалдаг.
Өгөгдлийн хүснэгтэнд бичлэгийг давхцуулж хадгалах, өөрөөр хэлбэл ижил бичлэг оруулж хадгалахыг зөвшөөрдөггүй. Давхцалыг хянах, бичлэгүүдийг ялгаж хандах зорилгоор анхдагч түлхүүр элементийг хүснэгтүүдэд тодорхойлж өгдөг.
Хоёр хэмжээст хүснэгтийн тодорхойлолтууд 
Харьцаа, хүснэгт, объект, бичлэгийн төрөл - холбоо бүхий элементүүдийн цогц
Атрибут, өгөгдлийн элемент, талбар, багана – харьцааг тодорхойлсон шинж чанар буюу нэг төрлийн өгөгдөл
Өгөгдлийн утга - атрибутад хадгалах жинхэнэ өгөгдөл
Бичлэг, мөр - холбоо бүхий өгөгдлийн утгуудын цогц
Анхдагч түлхүүр – харьцааны тодорхой нэг бичлэг рүү хандах боломжийг олгодог атрибут буюу атрибутуудын цогц, тус түлхүүрийн утгыг давхцуулж болохгүй




































Батлав. МХМБСТэнхмийн эрхлэгч ........................................................../ О.Мөнхбаяр/
Лекц –  4 Өгөгдлийг индексжүүлэх
Холбогдох өгөгдөлийн бүтэц Компьютерийн шинжлэх ухаанд холбогдсон өгөгдөлийн бүтэц нь өгөгдөлийн бүтцэд өгөгдөлийн бичлэг суугдсан байдаг ба заалт холбогдсон эсвэл үзүүлэлтээр байгуулагддаг.Холбогдсон өгөдөлийн бүтэц онцгой өгөгдөлийн төрөл нь ихэнхдээ тэнцвэртэйбайдлыг харьцуулах эсвэл дахин зааварлалт зэргийг л чаддаг шиг боловсруулдаг.Холбогдсон өгөгдөлийн бүтэц нь маань болон өөр өгөгдөлийн бүтцэд шаардлагатай үзүүлэлт дээрх ариметик гүйцэтгэлтэй байх эдгээрээс эрс ялгаатай юм. Зангилаа яг үнэндээ нэг массивийн элемент шиг хэрэгжүүлэгдсэн мөн заавар нь яг массив индекс: өгөгдөлийн бүтэц нь яг 1 холбогдсон индекс дээр ямарч тооцоололгүй болвол дуусна. Холболт нь 2 янзаар дуусдаг: динамик хувиарлал ашиглаж мөн массив индекс холболтыг ашиглана.Холбогдсон өгөгдөлийн бүтцэд холбогдсон жагсаалтууд, хайлтын мод, мөн олон ихээр хэрэглэгддэг өгөдөлийн бүтцүүд ордог.Тэдгээр нь түүнчлэн математикийн ухааны төрөл мөн нэгдэл хайлтыг суулгах нь түлхүүр хайлт болон олон ашигтай алгоритмууд байдаг. Холбогдсон жагсаалтууд Холбогдсон жагсаалтууд нь санах ойд изик байршуулалтаар биш дараалласан бүтцийн цуглуулга юм. Гэвч локигоор холбогдсон энэ нь дараалласан бүтэц нь өөрөө өгөдөлийн хэсэг шиг бүтэц юм. Энэ нь зэрэгцээ санах ойн байрлалд нөөц шаардлагатай биш юм. Өгөгдөл бүр өгөгдөлийн хэсэгтэй мөн хаягийн хсэгтэй байдаг. Хаягийн хэсэг нь залгамжлагчын хаягыг багтаасан байдаг. Хаягийн залгамжлагч нь 1,2 эсвэл олон холбогдсон мөн эдгээр нь бүгд шугаман эсвэл тойргоор байх боломжтой. Гол шинж чанар:
·         -обьект, дуудагдсан зангилаанууд, шугаман дараалалтай холбогдсон
·         -зааварын дагуу жагсааалтын эхний зангилаа нь хадгалагдсан байдаг. Дуудахдаа толгой эсвэл эсрэгийг нь дууддаг.



Жишээ : Энэ жишээ нь холболтын жагсаал холболтын жагсаалтад Java-гийн бүхэл тооны хэрэгжилтийг харуулж байна.
·         public class IntNode{
·         public int value;
·         public IntNode link;
·         public IntNode (int v) { value=v;}
·         }
Жишээ; холболтын жагсаалтын хэрэгжилтийг бүтцэд хэрэглэж байн
·         struct node
·         {
·         int val;
·         struct node *next;
·         };
Typedefs- ийг ашиглаж байна
·         typedefs struct node_s node_t;
·         struct node_s
·         {
·         int val;
·         node_t *next;
·         };
хэмжээний жагсаалтын хэмжэгдэхүүний C++ дэх class бүтцийг хэрэглэдэг.
·         class Node
·         {
·         int val;
·         Node *next;
·         };
Массив харьцуулалтын давуу тал Массив харьцуулалтыг харьцуулахад холбогдсон өгөгдөлийн бүтэц нь зайг хувиарлах мөн өгөгдөлийг зохион байгуулахад илүү уян хатан байдлыг хүлээн зөвшөөрдөг. Массивт эхэлхэд хэмжээ нь нарийн тодорхой байх ёстой. Энэ нь санах ойн илүүдэл байх боломжтой. Холбогдсон өгөгдөлийн бүтэц нь динамик бүтэцтэй мөн хэзээ ч програмаасаа том байх хэрэггүйг шаарддаг. Түүнчлэн холбогдсон өгөгдөлийн бүтэц хээглэх үед хувиарлахад хэр хэмжээний зай байгааг тааж тогтоох шаардлагатай байдаг. Энэ нь санах ойн хоосон зайг хамгаалах 1 арга юм. МАссивт массивын элемент нь санах ойн хэсэгт зэргэлдээ(дэс дараалалтай холбогдсон ) байх хэрэгтэй. Гэвч холбогдсон өгөгдөлийн бүтцэд дараагийн 1-ийг хаанаас олж болох мэдээллийг зангилаа бүр дээр заавар болгон өгдөг. Холбогдсон өгөгдөлийн бүтцийн зангилаа нь тусдаа хөдөлж логик өөрчлөлтгүйгээр өөр байрлалаас хоорондоо холбогддогоороо массиваац ялгаатай. Хамааралтай байх үед: өөр хэсгийн үйл явц нь ажиллаж байх зуур өгөгдөлийн бүтцийн 1 хэсэг зангилаа устах эсвэл үйл явцыг нэмж болно.Өөр нэг арга бол зааврын дагалдагч зангилаа нь холбогдсон өгөгдөлийн бүтцэд шаардлагатай байдаг. Үүнд ямар ч онцгойлсон зангилаа нь нэвтэрдэг. Ихэнхи өгөдлийн бүтцүүдэд зангилаа нь хамгийн багадаа л гэхэд (u-1)-ээс дээш алхамтай байхыг шаарддаг. Эсрэгээрээ ихэнхи хэмжээст өгөдлийн бүтцүүд нь оролтын хэмжээ нь бие даасан байдал бүхий тогтмол тооны үйлдлийн элемэнтүүдрүү хандахыг зөвшөөрнө. Ерөнхийдөө динамик өгөгдлийн бүтэц, холбогдсон өгөгдлийн бүтэц эдгээрийн гүйцэтгэл юм. Энэ нь бидэнд гол зайг дахин ашиглах боломж олгодог. Санах ой нь өгөгдлийн бүтцийн хэрэглээгээр илүү үр бүтээлтэйгээр ашиглах боломжтой юм. Санах ой нь шаардлагатай болсон үед хувиарлагдаж шаарлагагүй болсон үедээ чөлөөлөгддөг.
Ерөнхий сөрөг тал Холбогдсон өгөгдлийн бүтэц нь мөн адил үндсэн санах ой нь хувиарлалтанд нэмэлтээр орох ба санах ой нь хуудаслалт болон процессор нууцлал хийх алгоритмын өгөгдлийг удаашруулдаг. Энэ тохиолдолд холбогдсон өгөгдлийн бүтэц нь илүү санах ой(холболтын талбар) үүнээс массивын бүтэц нь зөрөөтэй байдаг. Учир нь холболтын өгөгдлийн бүтэц нь зэрэгцээ биш байдаг. Жишээ нь өгөгдөл нь санах ойн доторхи бүгдийг олж чаддаг, массив нь үүнээс өөр юм.Массивд холбогдсон өгөгдлийн бүтэц нь олон зорилтыг дагаж тэгээд бүтцийн элемэнт нь цагийн төрлөөр нэвтэрч байхад элемэнт нь их хэмжээгээр нэвтрэх боломжтой болдог. Онолоор зарим тооцооллын загвар нь бүтцийн холболтын шахалтыг шаарддаг энэ нь заалтын машин, шиг мөн маш олон асуудлуудад хүсэлтээрээ санамсаргүй хэвтрэх машины завбар болон илүү алхамуудыг шаарддаг.

























Батлав. МХМБСТэнхмийн эрхлэгч ........................................................../ О.Мөнхбаяр/
Лекц –  5 Хайлт зохион байгуулах
Хичээлийн зорилго
Оюутнуудад өгөгдлийн бааазаас өөрт хэрэгтэй мэдээлэл хэрхэн хайх
талаар онол болон практик дадлага эзэмшүүлхэд энэ лекцийн зорилго
оршино.
-        Өгөгдлийн санд хайлт зохион байгуулах
-        Хайлт хийх хүснэгтүүдийг тодорхойлох
-        Хайлтын загварыг тодорхойлох
-        Хайлт хийх талбарыг сонгох
-        Нэг талбарын утгаар сонголт хийх
1.     Аль талбараас өгөгдлийг хайх гэж байна гэвэл тэр талбарт хулганыг зөөнө.
2.     EDIT цэсийн FIND командыгсонгоно. Эсвэл дүрст командаас РАО товчийг хулганаар дарна. Жишээ нь: Customer нэртэй table-ийн Customerld талбарын өгөгдлүүд дунд хайлт хийхээр сонгон дээрх командыг өгье
3.     Find in field "customerID" нэртэй цонх нээгдэх ба FIND What нүдэнд ямар өгөгдлийг тухайн талбарт байгаа өгөгдлүүд дундаас хайх гэж байгааг гараас бичиж өгнө.
Мөн SEARCH нүднээс хайлтыг аль хэсэгт хийхийг тодорхойлно. Мөн SEARCH ONLY CURRENT FIELD гэсэн нүдийг идэвхижүүлсэнээр хайлтыг зөвхөн идэвхитэй байгаа талбарт хайна.           ;
4.     Хайх үгийг тодорхойлж өгсөний дараа FIND FIRST командыг өгнө. Ингэхэд анхны хайлт хийх ба тухайн идэвхитэй талбарт байгаа DUMON гэсэн хэрэглэгчийн дугаартай эхний бичлэг дээр удирдлага очно. Харин дахин өөр бичлэг байна уу гэдгийг хайхын тулд FIND NEXT командыг өгнө. Хайлт хийх үйл явц дуусаад дахин энэ өгөгдөл олдохгүй бол хайлт хийж дууслаа гэсэн мэдээлэл гарна.
5. Хайлт хийж дуусан бол CLOSE товчийг даран цонхыг хаана.
Drachenblut их хэмжээний мэдээлэлтэй TABLE болон Do monde FORM- дээр ажиллаж байх үед хайлтын Eastern Cor системийг ашиглах нь таны ажиллагааг хөнгөвчилж өгөх давуу талтай:
Зарим тохиолдолд мэдээллийн баазад байгаа өгөгдлүүдээс тодорхой өгөгдлийг хайлт хийгээд , хайсан өгөгдөл олдвол өөр шинэ өгөгдлөөр солих шаардлага гардаг. Үүнийг гүйцэтгэхдээ:
1.   Хайлт хийх талбар дээр хулганыг авчирна.
2.   EDIT цэсээс REPLACE командыг өгнө.
3.         Ингэхэд дараах цонх гарах ба FIND WHAT нүдэнд ямар өгөгдлийг мэдээллийн баазаас хайхыг бичнэ. Харин REPLACE WITH күдэнд тухайн хайсан өгөгдөл олдвол ямар өгөгдлөөр солихыг оруулж өгнө.
FIND NEXT командаар өгөгдлийг хайна. Өгөгдөл олдонгуут REPLACE товчин дээр дарж шинэ өгөгдлөөр сольж болно. Хэрэв мэдээллийн бааз дахь бүх бичлэгээс өгөгдлийг хайгаад олдох юм бол бүгдийг нь шинэ өгөгдлөөр солих бол шууд REPLACE ALL команд дээр дарж болно. CLOSE товчин дээр дарж цонхыг хаана.
Хайлт хийхэд мөн тусгай тэмдэгтуудийг ашиглах болно. Жишээ нь: Хайлтчхийсэн өгөгдөл        Хайлтын үр дүнд олдож болох өгөгдөл
Sm?th ,                                                          Smith
Smyth L*ng -                                                     Ling
Levering                                                             Leka Travel   and Trading
#th                                                                                  5th
8th *th                                                          128th
Perth Paulfao]                                                Paula
Paulo Paulflao]                                               Pauli    /Paulo,      Paula биш/
[ ]- дөрвөлжин хаалтан дотор тэмдэгтүүдийг бичиж өгвөл тухайн хаалтан доторх тэмдэгтүүдийн аль нэг нь орсон тэмдэгтийг хайна. Харин тэмдэгтүүдийн өмнө ! -анхаарлын тэмдэг тавьснаар тэдгээр тэмдэгтүүдээс ялгаатай тэмдэгтийг хайна.