Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Se304 lec7

  • Login to see the comments

Se304 lec7

  1. 1. SE304 ӨГӨГДЛИЙН САНГИЙН УДИРДАХ СИСТЕМБатлав: ПХТ-ийн эрхлэгч Г.ЭРДЭНЭЧИМЭГ Өгөгдлийн сангийн тодорхойлолт Indexes, Primary keys, Foreign keys ЛЕКЦ №7ШУТИС-Ñ¿ÒÑ, Ìàãèñòð Ë.Áàòáèëýã (bayanzeerd2002@yahoo.com, +976-88515155)
  2. 2. MS SQL Server-ийн ХувилбаруудMS SQL Server нь олон янзын хувилбаруудтайба тус бүр өөрсдийн давамгай чадваруудтай бамөн өөр өөр түвшний хэрэглэгчдэдзориулагдсан. Эдгээрийг доор дурдвал :
  3. 3. SQL Server Compact Edition (SQL CE)Энэ нь SQL Server-ийн бага оврын хувилбар юм (2MB DLLfootprint-тэй). Бусдаасаа бага хэмжээтэй байх ба мөн чадваруудыгнь багасган тохируулсан. Энэ хувилбар нь хамгийн ихдээ 4 ГБхэмжээтэй байх боломжтой өгөгдлийн сангаар хязгаарлагдсан.Мөн Windows орчинд ажилладаггүй.
  4. 4. SQL Server Express EditionExpress Edition бол SQL Server-нбагасгасан, үнэгүй хувилбар боловч өгөгдлийнсангийн үндсэн цөм хөдөлгүүрийг агуулсанбайдаг. Өгөгдлийн сангийн , хэрэглэгчийн тоондхязгаарлалт байдаггүй ба нэг процессор, 1GBram, 4 GB өгөгдлийн сангийн файлтай байхаархязгаарлагддаг. Бүтэн өгөгдлийн сан нь ганцхан.DBF файл байдаг. Энэ нь тэгэхээр XCOPYтехнологийг ашиглахад хялбар болгож байдаг
  5. 5. SQL Server Workgroup EditionЭнэ хувилбар нь өгөгдлийн сангийн цөмхөдөлгүүр, функцуудыг агуулдаг боловч нэмэлтүйлчилгээнүүдийг агуулдаггүй.
  6. 6. SQL Server Standard EditionЭнэ хувилбар нь өгөгдлийн сангийн цөмхөдөлгүүр, stand-alone үйлчилгээний дагуухзүйлсийг агуулдаг. Enterprise хувилбараасялгаатай нь хязгаарлагдмал нэг дор холбогдохболомжтой хэрэглэгчийн тоо юм. Бас зарим өндөртүвшний hot-add memory (сервер ажиллаж байхүед ч санах ой нэмэх боломжтой ! )гэх мэтфункцууд , параллель индекслэх функц байдаггүй.
  7. 7. SQL Server Enterprise EditionЭнэ хувилбар нь SQL Server-н иж бүрэн хувилбар бөгөөд өгөгдлийнсангийн цөм хөдөлгүүр, нэмэлт үйлчилгээнүүд, SQL Server cluster –гүүсгэх, зохион байгуулах өргөн хэмжээний боломжууд хавсаргагдсанбайдаг.
  8. 8. SQL Server Developer EditionЭнэ хувилбар нь Enterprise хувилбарын заримчанаруудыг агуулсан боловч зөвхөнхөгжүүлэх, тестлэх боломжтой, өөрөөр хэлбэлбүтээгдэхүүн (өгөгдлийн бааз) сервертажиллуулах боломжгүй лицензтэй байдаг. Энэхувилбар нь Microsoft-н DreamSpark хөтөлбөрийндагуу оюутнууд үнэгүй татаж авах боломжтойбайдаг.
  9. 9. Relationship холболтRelational database-ийн хүснэгтүүдэд нэг давхацсан/адилхан/ талбар байх ѐстой. Энэ давхцагч талбарнь нэг хүснэгтийн нөгөө хүснэгттэй холбох холбоосбайх болно. Тэгэхээр relationship гэдэг нь нэгхүснэгтийн бичлэгийг нөгөө хүснэгтийн бичлэгтэйхолбох холбоос юм. Үүний ачаар тус тусдаахүснэгтүүд хоорондоо харилцан уялдаа холбоотойболж цогц өгөгдлийн санг үүсгэх юм. Хүснэгтүүдийгхооронд нь холбох 3 янзын холбоос байдаг. Үүнд:1. Нэг нь нэгтэй /one to one/2. Нэг нь олонтой /one to many/3. Олон нь олонтой /many to many/
  10. 10. Primary key / Foreign key-түлхүүр талбарRelatonal database-ийн хүснэгтийн бичлэгүүд давхардсанбайж болохгүй. Үүний тулд нэг бичлэгийг нөгөөгөөс ялгаж өгчбайдаг дор хаяж нэг талбар байх ѐстой. Ийм талбарыгтүлхүүр талбар буюу primary key гэнэ. Жишээ нь: 5 талбартайхоѐр бичлэгийн 4 талбарын утга нь адилхан байлаа гэхэдүлдсэн ганц талбарын утгууд нь өөр хоорондоо ялгаатай байхѐстой.Түлхүүр талбарыг мөн хүснэгтүүд хооронд relationshipүүсгэхэд ашиглана. Энэ тохиолдолд эхний хүснэгтэд primarykey болж орсон бол нөгөө хүснэгтэд түүнийг foreign key гэнэ.
  11. 11. Primary key тодорхойлохХүснэгтийнхээ талбарууд дотроос түлхүүрталбарыг тодорхойлж өгөхийн тулд түлхүүрталбар болгох талбараа сонгон хулганы баруунтовчийг даран Set primary key командыг өгөххэрэгтэй. Ингэхдээ түлхүүр талбараар сонгохталбарын утгууд давхардсан байж болохгүйганхаарна
  12. 12. Хүснэгтүүдээ Relationship-ээр холбохҮүсгэсэн хүснэгтүүдээ relationship-ээр холбохын тулдүүсгэсэн Databse дотор хамгийн эхний хавтас буюуDatabase Diagrams хэсгийг идэвхжүүлээд хулганы баруунтовчийг дарж New Database Diagram-ийг сонгоход AddTable цонх гарч ирнэ. Энэ цонхны Tables хэсэгт холбоххүснэгтүүдээ Add хийнэ. Гарч ирсэн хүснэгтүүдийн primarykey тодорхойлсон хэсэг дээр дарж чирээд нөгөө хүснэгтрүү аваачин click хийнэ. Холболт хийсэн Diagram-даанэрээ өгч хадгалах шаардлагатай. Ингэснээр хүснэгтүүдхоорондоо уялдаа холбоотой болж цогц өгөгдлийн санбүрдэж байгаа юм.
  13. 13. SELECT, WHERE, AND, OR, ORDER BYSQL SELECT Statement - SQL SELECT үйлдэлSELECT үйлдэл нь Өгөгдлийн сангийн өгөгдлүүдийг сонгожхарахад хэрэглэгдэнэ.Үр дүн нь үр дүнгийн хүснэгтэнд хадгалагдах бөгөөд түүнийгresult-set (Үр дүнгийн олонлог) гэж нэрлэдэг.Формат1. SELECT баганы_нэр(-үүд) FROM хүснэгтийн_нэр2. SELECT * FROM хүснэгтийн_нэрЖишээ.SELECT LastName, FirstName FROM StudentSELECT * FROM Student* тавьсанаар хүснэгтийн бүх бичлэгийн харуулна
  14. 14. SELECT DISTINCT үйлдэлХүснэгтэнд зарим баганууд давхардсан(ижил) утга агуулсан байдаг. Хэрэв тиймхүснэгтээс ялгаатай утгуудыг сонгож харахшаардлагатай бол DISTINCT үйлдлийгашигладаг. (Distinct - Ялгаатай)ФорматSELECT DISTINCT баганы_нэр(-үүд)FROM хүснэгтийн_нэр
  15. 15. WHERE түлхүүр үгWHERE түлхүүр үг нь бичлэг(өгөгдөл)-үүдийгтодорхой нөхцөлийн дагуу шүүж харуулна.ФорматSELECT баганы_нэр(-үүд)FROM хүснэгтийн_нэрWHERE нөхцөлЖишээлбэл, "Student" Хүснэгтээс "СБ-3-7" гэсэнхаягтай сурагчдыг сонгож харъя.SELECT * FROM Student WHERE Address = СБ-3-7
  16. 16. Текстэн болон огноон төрлийн утгын 2 талд ньдан кавычка() тавигдана.Жишээ. "Student" хүснэгт нь төрсөн огноо гэсэногноон(Datetime) төрөлтэй баганатай байг.1992.05.05-нд төрсөн оуютнуудыг харахдаа:SELECT * FROM Student WHERE BirthDate =1992.05.05
  17. 17. WHERE үйлдэлтэй хамт хэрэглэгддэг операторууд= Тэнцүү<> Ялгаатай> Эрс их< Эрс бага>= Их буюу тэнцүү<= Бага буюу тэнцүүBETWEEN Хооронд Тухайн багана тухайн дэд мөр(текст)-ийгLIKE агуулсан эсэх Тухайн элемент(утга) бүлэгIN элемэнт(олонлог) дотор агуулагдсан эсэх
  18. 18. AND ба OR операторуудAND нь логик үржүүлэх оператор бөгөөд AND-ээр холбогдсон 2 нөхцөл хоёулаа үнэн үеднөхцөл үнэн байна. Харин OR оператор ньлогик нэмэх үйлдэл бөгөөд аль нэг нөхцөлүнэн байхад логик илэрхийллийн утга үнэнбайна
  19. 19. Ж.1. SELECT * FROM Book WHERE Year = 2000AND Author = Garmaa2000 онд бичигдсэн зохиогчийн нэр ньGarmaa байх номуудыг харуулна.2. SELECT FirstName, LastName FROM StudentWHERE Address LIKE %БЗ% OR Address LIKE%БГ%Хаяг(Address)-ийн утга нь БЗ болон БГ гэсэнхэсэг агуулсан оюутнуудын нэр, овогийгхаруулна.
  20. 20. ORDER BY түлхүүр үгORDER BY түлхүүр үг нь result-set(тодорхой бүлэгөгөгдлүүд)-ийг тодорхой баганаар эрэмбэлжхаруулна. ORDERY BY нь ердийн үед өсөхөөрэрэмбэлж харуулна. Буурахаар эрэмбэлэхээр болDESC түлхүүр үгийг нэмж бичинэ. Харин өсөхөөрэрэмбэлэхдээ ASC түлхүүр үгийг нэмж бичсэн чболно.
  21. 21. ФорматSELECT баганы_нэр(-үүд) FROM хүснэгтийн_нэр ORDER BYбаганы_нэр ASC|DESCЖишээ.1. SELECT * FROM Student ORDER BY FirstName2. SELECT FROM Name, Author, Year FROM Book ORDER BY YearDESCЭхний тохиолдолд "Student" хүснэгтийн бүх өгөгдлийг оюутны нэрбуюу FirstName баганаар өсөхөөр эрэмбэлж харуулна, хоѐрдохтохиолдолд "Book" хүснэгтйин Name(Номыннэр), Author(Зохиогч), Year(он) багануудыг Year баганы утга буурахбайдлаар эрэмбэлэн харуулна.
  22. 22. SQL Server дээрх өгөгдлийн санг BackUp хийх.Өгөгдлийн сангийн баазыг өөр компьютерт зөөж ашиглах тохиолдол гардаг.Энэ тохиолдолд тухайн өгөгдлийн санг өөр дээр нь Backup(нөөцлөх) хийгээдшилжүүлж зөөх компьютертаа баазаа Restore хийдэг. Энэ үйлдлүүдийгжишээгээр үзүүлье.Эхлээд backup хийх. Дараах book_db нэртэй баазыг backup хэрхэн хийдэгтухай үзье.Нөөцлөх гэж байгаабаазаа сонгоод хулганыmouse2 –р гарч ирэхцэснээс Тasks -> BackUp… командыг сонгоходдараах цонх гарч ирнэ.
  23. 23. Destination хэсгийн Remove командыг сонгно. Энэ нь шинээр нөөц үүсгэх зай гаргаж өгч байна. Үүний дараа Add командыг дарж үргэлжлүүлнэ.
  24. 24. Бааз хадгалах фолдерыг зааж өгсөний дараа баазыннэрийг бичиж өгөх хэрэгтэй. Баазын нэрийн File nameхэсэгт бичиж өгөх бөгөөд дээрх тохиолдолд book_db гэсэнбаазын нэрийг өөрчлөхгүйгээр өгсөн байна. Энэ нэрийнөөрөөр өгч болно. Гэвч тухайн нэрээр нь өгөх нь бидэндашигтай. Учир нь програм дотор баазын нэртэй холбоотойкод бичигдсэн байгаа. Файлын нэрийг өгөхдөө book_db.bakөргөтгөл зааж өгсөнийг анзаараарай. Энэ нь backupфайлын өргөтгөл юм.
  25. 25. OK товч дарахад. Back Up Database – book_db нэртэй цонх гард чирэхбөгөөд энэ цонхны Ок командыг сонгосоноор бааз амжилттай нөөцлөгдсөнгэдгийг илэрхийлж The backup of database ‘book_db’ completed successfullyгэсэн мессеж өгнө.
  26. 26. Ок товч дарснаар ажиллагаа дуусч нөөц файл мааньc:/database/book_db.bak нэртэйгээр үүснэ.
  27. 27. АНХААРАЛ ХАНДУУЛСАНД БАЯРЛАЛАА

×