2011/11/21

Өгөгдлийн сан-MS SQL SERVER-2005

Өгөгдлийн сантай бүхий л хэлбэрээр ажиллахад зориулсан компьютерын програм хангамжийг Өгөгдлийн Санг Удирдах Систем/Database Management System-DBMS/ хэмээн нэрийднэ.

Хэрэглэгч өгөгдлийн сантай DBMS-ийн тусламжтайгаар харьцана.

Өгөгдлийн санг удирдах системийн тусламжтайгаар:
• Өгөгдлийн санг шинээр үүсгэх
• Өгөгдлийн санд өгөгдөл нэмж оруулах
• Өгөгдлийн сангаас өгөгдөл устгах
• Өгөгдлийн сангаас өгөгдөл хайх
• Өгөгдлийн сангийн өгөгдлүүдийг эрэмбэлэх
• Өгөгдлийн сангийн өгөгдлүүдийг шинэчлэх
• Өгөгдлийн сангийн нууцлалыг бүрдүүлэх
• Өгөгдлийн санг хэрэглэгчдэд дүрслэн харуулах
гэх мэт үйл ажиллагааг гүйцэтгэнэ.

Өгөгдлийн санг удирдах системүүд:
• dBase
• Interbase
• Microsoft Access
• MS SQL Server
• MySQL
• Oracle
• Paradox(database)
• Sybase
• Visual FoxPro
гэх мэт өгөгдлийн санг удирдах системүүд байдаг. Бид өгөгдлийн сан хичээлийн хүрээнд MS SQL SERVER 2005 өгөгдлийн санг удирдах системтэй танилцана.

Өгөгдлийн төрөл
Хүснэгтийн талбарын төрлийн утгууд логикийн хувьд ялгаатай. Жишээ нь текст тоо хоёрын логик ялгаа илэрхий билээ. Учир нь тоог цагаан толгойн үсгийн дэс дарааллаар байрлуулж болохгүй, эсвэл нэрүүд дээр арифметик үйлдэл гүйцэтгэж болдоггүй. Иймд өгөгдлийн янз бүрийн төрлүүд бие биеээсээ ялгарах ёстой ба тэдгээр дээр тодорхой үйлдлүүдийг хийж болдог.
Талбар бүр тодорхой төрлийн утга авна.
Үүнд:
• Тоон
• Текстэн буюу тэмдэгт

Өгөгдөл гэж юу вэ?
Өгөгдөл гэдэг нь тоо болон тэмдэгтүүдийн цогц юм. Жишээ нь: 123, аав, нар гэх мэт.

Мэдээ гэж юу вэ?
Мэдээ гэдэг нь ямар нэг зорилгогүйгээр цуглуулсан өгөгдөл. Жишээ нь: цаг минут.

Мэдээлэл гэж юу вэ?
Мэдээлэл гэдэг нь тодорхой зорилготойгоор ямар нэг хэрэгцээ шаардлагыг хангахуйцаар боловсруулагдсан мэдээг хэлнэ. Жишээ нь: Маргааш цас орно. Дулаан хувцасаа өмсөж гараарай.

Өгөгдлийн сан /Database/гэж юу вэ?
Өгөгдлийн сан нь өөр хоорондоо харилцан холбоотой өгөгдлүүдийн цуглуулга юм. Өөрөөр өгөгдлийн санг “Олон хэрэглэгч олон зорилгоор ашиглаж болох өгөгдлүүдийн цогц” гэж тодорхойлдог.

Багана – талбар /field/
Мөр – бичлэг/record/
Өгөгдлийн баазын хүснэгт бүр нь мөр болон багануудын цогц байна. Мөр нь обьектын тодорхой үзэгдэлд харгалздаг бол багана нь үзэгдлийн аттрибутад харгалзана.

Файл гэж юу вэ?
Нийт оруулсан мэдээллээ нэр өгч сануулан, файл болгодог. Өөрөөр хэлбэл нэг мэдээллийн санг файл гэнэ.

Relationship холболт
Relational database-ийн хүснэгтүүдэд нэг давхацсан /адилхан/ талбар байх ёстой. Энэ давхцагч талбар нь нэг хүснэгтийн нөгөө хүснэгттэй холбох холбоос байх болно. Тэгэхээр relationship гэдэг нь нэг хүснэгтийн бичлэгийг нөгөө хүснэгтийн бичлэгтэй холбох холбоос юм. Үүний ачаар тус тусдаа хүснэгтүүд хоорондоо харилцан уялдаа холбоотой болж цогц өгөгдлийн санг үүсгэх юм. Хүснэгтүүдийг хооронд нь холбох 3 янзын холбоос байдаг. Үүнд:
1. Нэг нь нэгтэй /one to one/
2. Нэг нь олонтой /one to many/
3. Олон нь олонтой /many to many/

Primary key/Foreign key-түлхүүр талбар
Relatonal database-ийн хүснэгтийн бичлэгүүд давхардсан байж болохгүй. Үүний тулд нэг бичлэгийг нөгөөгөөс ялгаж өгч байдаг дор хаяж нэг талбар байх ёстой. Ийм талбарыг түлхүүр талбар буюу primary key гэнэ. Жишээ нь: 5 талбартай хоёр бичлэгийн 4 талбарын утга нь адилхан байлаа гэхэд үлдсэн ганц талбарын утгууд нь өөр хоорондоо ялгаатай байх ёстой.
Түлхүүр талбарыг мөн хүснэгтүүд хооронд relationship үүсгэхэд ашиглана. Энэ тохиолдолд эхний хүснэгтэд primary key болж орсон бол нөгөө хүснэгтэд түүнийг foreign key гэнэ.

Query
Хэрэглэгч өгөгдлийн сангаас мэдээлэл авахын тулд өгөгдлийн сан руу хүсэлт илгээдэг. Энэ хүсэлтийг query гэнэ.

Өгөгдлийн сан зохион байгуулах алхамууд
1. Та өөрийн Database-ийн зорилгыг тодорхойлох
2. Танд ямар ямар Table хэрэгтэйг тодорхойлох
3. Таны баазад ямар ямар талбар хэрэгтэйг тодорхойлох
4. Таны тодорхойлсон Table хооронд ямар харьцаа холбоо байгааг тодорхойлох
5. Загварыг сайжруулах

Microsoft SQL SERVER 2005
MS SQL Server бол Microsoft компанийн үйлдвэрлэсэн Холбоотой Өгөгдлийн сангийн удирдлагын систем юм.
Relational Database Engine нь SQL серверийн амин судас бөгөөд энэ гол сервесийн үүргийг гүйцэтгэдэг өгөгдлийн сангийн нөөцийг хуваарилах үйл ажиллагааг гүйцэтгэдэг байна.Эдгээр нь өөрсдийн функц нөөцүүдийг ажиллуулах боломжоор хангадаг бөгөөд Engine нь сервесийг динамикаар тохируулга хийдэг байна.
SQL 2005 database бүр нь нэлээд олон бүрдэл хэсгүүдтэй. Эдгээр нь мэдээллийг агуулах, боловсруулах, гүйцэтгэх үйл ажиллагааг өөр өөрсдийн түвшинд хийх боломжтой юм.

MS SQL SERVER 2005 програмтай ажиллах
MS SQL SERVER 2005 програмыг суулгахдаа доорх дарааллын дагуу суулгана. Үүнд:
1. Windows Installer.exe
2. NetFrameWork.exe
3. SQL Server 2005 Express Edition.exe
4. SQL Server 2005 Express Edition Management.msi
Ингээд суулгасны дараагаар програмыг нээхдээ Microsoft SQL Server 2005 хавтсанаас SQL Server Management Studio Express-ийг сонгоход нэвтрэх цонх гарч ирнэ.
Server type: Database Engine
Server name: энэ хэсэгт гэсэн холбоосоор орж Local Server талбараас Database Engine руу ороход уг програмыг суулгахад өгсөн server name байх болно түүнийг сонгоод
Authentication: энэ хэсэгт програмыг суулгах явцдаа хэрэглэгчийн нэр, нууц үг үүсгэлгүйгээр суулгасан бол Windows Authentication, харин суулгах явцдаа нууц үг оруулсан бол SQL Server Authintication-ийг сонгон Username хэсэгт sa, Login хэсэгт нь нууц үгээ оруулаад connect хийнэ.


Database үүсгэх
Өгөгдлийн сантай ажиллахын тулд эхлээд шинээр Database үүсгэх шаардлагатай. Database үүсгэхдээ: Database гэсэн хэсгийг идэхжүүлээд хулганы баруун товчийг дараад New Database… ийг сонгоход гарч ирсэн цонхноос Database name: хэсэгт нэрээ өгөөд Ok дарахад л болно.


Table үүсгэх
Ингээд Database хэсэгт таны үүсгэсэн өгөгдлийн сан нэрээрээ орсон бол Tables хэсгийг идэвхжүүлээд хулганы баруун товчийг даран New Table-ийг сонгож хүснэгтээ үүсгэнэ.
Column name: багана буюу талбарын нэр
Data type: өгөгдлийн төрлийг заах
Allow nulls: хоосон утга дэмжих эсэх
Үүний дараа хүснэгтээ хадгалах хэрэгтэй болно. Хадгалахын тулд гарнаас ctrl+s эсвэл Properties цонхны Name хэсэгт нэрээ өгөөд /хадгалаагүй байхад хүснэгтийн дээд талын хэсэгт Table-dbo.Table_1/ хулганы баруун товчийг даран save хийнэ. Үүсгэсэн хүснэгт чинь таны үүсгэсэн Database дотор Tables хэсэгт dbo.Name хэлбэрээр орсон байх болно. За ингээд хүснэгтийн талбар, төрлийг оруулсаны дараагаар өгөгдөл оруулах хэрэгтэй болно. Үүний тулд dbo.Name хэлбэрийн хүснэгтийн хэсгээ идэвхжүүлэн хулганы баруун товчийг даран Open table хийж нээгээд харгалзах талбарын дагуу өгөгдлүүдээ оруулна. Харин өгөгдлийн төрөл эсвэл талбар хэсгээ засварлах шаардлагатай бол dbo.Name дээрээ хулганы баруун товчийг даран Modify хийж засварлаж болно.


Query үүсгэх
Үүсгэсэн өгөгдлийн сангаа /хүснэгтээ/ тусгай командууд ашиглан query үүсгэж кодчилдог. Query үүсгэхийн тулд өөрийн үүсгэсэн Database-ийн нэрийг идэвхжүүлээд хулганы баруун товчийг дарж New Query сонгон үүсгэнэ. Query бичсэнийхээ дараагаар нэрээ өгөөд хадгална. Хадгалахдаа замыг өөрчилж хадгалаагүй тохиолдолд таны компьютерын My Documents дотор SQL Server Management Studio Express хавтсанд Projects хэсэгт хадгалагдах болохоор өмнө бичсэн Query-нүүдээ энэ хавтсанаас харах боломжтой.
Query бичиж дуусаад шалгахын тулд /гарнаас F5 товчийг дарж болно/ Execute командыг сонгож шалгана.


Primary key тодорхойлох
Хүснэгтийнхээ талбарууд дотроос түлхүүр талбарыг тодорхойлж өгөхийн тулд түлхүүр талбар болгох талбараа сонгон хулганы баруун товчийг даран Set primary key командыг өгөх хэрэгтэй. Ингэхдээ түлхүүр талбараар сонгох талбарын утгууд давхардсан байж болохгүйг анхаарна уу.


Хүснэгтүүдээ Relationship-ээр холбох
Үүсгэсэн хүснэгтүүдээ relationship-ээр холбохын тулд үүсгэсэн Databse дотор хамгийн эхний хавтас буюу Database Diagrams хэсгийг идэвхжүүлээд хулганы баруун товчийг дарж New Database Diagram-ийг сонгоход Add Table цонх гарч ирнэ. Энэ цонхны Tables хэсэгт холбох хүснэгтүүдээ Add хийнэ. Гарч ирсэн хүснэгтүүдийн primary key тодорхойлсон хэсэг дээр дарж чирээд нөгөө хүснэгт рүү аваачин click хийнэ. Холболт хийсэн Diagram-даа нэрээ өгч хадгалах шаардлагатай. Ингэснээр хүснэгтүүд хоорондоо уялдаа холбоотой болж цогц өгөгдлийн сан бүрдэж байгаа юм.

3 comments: