More Related Content
Similar to өгөгдлийн сан (20)
өгөгдлийн сан
- 1. ӨГӨГДЛИЙН САН
Зорилго: Визуал бейсик нь нэг буюу хэд хэдэн файлд байгаа өгөгдлүүдийг
засварлах, буцаах, агуулах зэргийг хэрхэн гүйцэтгэх тухай
Визуал бейсик нь өгөгдлийг удирдахад зориулан олон төрлийн удирдах
элементүүдээр хангагдсан. Tуре statement-г ашиглан өгөгдлийн бүтэц
тодорхойлж болохын зэрэгцээ файл удирдах командуудыг хэрэглэх боломжоор
хангагдсан байдаг.
Визуал бейсик програмчлалд өгөгдлийн баазын хөдөлгүүр (Database
Engine Jet) ба обьект нь болох Data access object (DAO), Remote Data Object
(RDO) танилцуулсан байдаг. 1997 оноос Microsoft нь мэдээлэлд хандах загвар
Universal Data Access гэдэг обьектыг гаргаж ирсэн.
Өгөгдлийн бааз нь холбоост хүснэгтүүдийн цуглуулга хэлбэртэйгээр
өгөгдлийн баазыг удирдах програм хангамжуудаар зохион байгуулагддаг.
Хүснэгтийн багана бүрийг field буюу талбар гэж нэрлэх ба талбар нь нэгэн
төрлийн мэдээллийг агуулна. Харин хүснэгтийн мөр бүрийг record буюу бичлэг
гэж нэрлэх ба бусад мөр болгонтойгоо ижил агуулгатай мэдээллийг агуулдаг.
Visual Basic 6.0 хэлний хувьд өгөгдлийн баазыг удирдах Ассess dBase,
FохРго, ба Раrаdох ээрэг програмуудтай холбогдон ажиллах боломжтой байдаг.
Өөрөөр хэлбэл эдгээр програмын тусламжтайгаар өгөгдлийн баазыг үүсгэж
зохион байгуулах боломжтой гэсэн үг юм.
Data удирдах элемент
Визуал бейсикийн хамгийн энгийн өгөгдлийн баазтай холбогдох удирдах
элемент бол Data Control байдаг. Data удирдах элемент нь өгөгдлийн баазаас
унших, хадгалах, устгах, бичлэг нэмэх зэрэг үйлдлийг гүйцэтгэнэ.
Data удирдах элементийг кодоор удирдах: MoveNext, MovePrevious,
MoveLast, 6a MoveFirst шинэ бичлэгийг нэрээр толилуулахын тулд зөвхөн нэг
бичлэг хийх код бичье.
Бичигдэх ерөнхий хэлбэр: Data 1.Recordset.MoveLast
- 2. Холбоост өгөгдлийн бааз ба SQL
Анхдагч ба гадаад түлхүүр: Хүснэгтийн хувьд бичлэг бүрийн хувьд цор
ганц тодорхойлогдох ялгах буюу таних талбарын утгыг авч үздэг. Тэр талбарыг
анхдагч түлхүүр буюу primary key гэж нэрлэдэг. Жишээ нь: Оюутны өгөгдлийн
баазад хоѐр адил нэртэй оюутнуудаас сонголт хийх асуудал их гардаг учраас
анхдагч түлхүүр талбараар регистрийн дугаарыг авч болно. Хэрвээ хэрэглэгч
адилхан анхдагч талбарын утгад өөр, өөр бичлэг оруулбал “Duplicate value in
index, primary key, ог relationshion. Changes were unsuccessful” гэсэн алдааны
тухай мэдээлэл өгнө.
Өгөгдлийн бааз хоѐр эсвэл түүнээс дээш тооны хүснэгтүүдийг агуулж
байвал тэдгээр нь ихэвчлэн холбогдсон байх ба тэдгээрийг уялдаа холбоотой
хүснэгтүүд буюу холбоос өгөгдлийн бааз гэж нэрлэдэг.
Гадаад түлхүүр нь визуал бейсикт хоѐр хүснэгтийн холболт үүсгэхэд
ашигладаг.
Хүснэгтүүдийн хооронд холболт хийхэд SQL (Structured Query Language)
гэж нэрлэгдсэн хэлийг ашигладаг. SQL-ийг анх 1970 оны эхээр IBM компани
холбоост өгөгдлийн баазад хэрэглэсэн түүхтэй. Энэ хэл нь 1986 онд ANSI
(American National Standarts Instute)-ээр стандарт болж хэрэгжиж эхэлсэн.
Харин визуал бейсикт SQL-ын ANSI-89 SQL стандартыг хэрэглэдэг. SQL нь маш
их хүчирхэг хэл юм. SQL-ын нэг хэрэглээ бол өгөгдлийн баазаас шаардлагатай
мэдээллийг ба болон холбоос бэлтгэн харуулдаг явдал юм.
SQL-ын дөрвөн шаардлага
Шаардлага I: Сонгосон дарааллаар хүснэгтийн бичлэгүүдийг харуулах.
Цагаан толгойн дараалалаар хотуудын нэрийг, улсуудын нэрээр ба
улсуудын группээр, хотын нэрээр харуулах гэх мэт.
Шаардлага II: Ямар нэгэн шалгуураар бичлэгийг харуулах
(а) Хотын нэр пь Сhina байх.
(b) 2015 оны хүн ам нь хамгийн багадаа 20 сая болсон хот
(c) Хотын нэр нь 8 үсгээр эхэлсэн байх гэх мэт.
Шаардлага III: Хүснэгтүүдийн хамт нь гадаад түлхүүрээр нь холбох ба энд 1, 2-р
шаардлага давхар биелэнэ.
(а) Улсуудын хүн амьг дараалал буурч байхаар хотуудыг харуулах
(b) Хоѐр дах үсэг нь U байх мөнгөний нэгжтэй хотуудын нэр гэх мэт
- 3. Шаардлага IV: Холбогдсон хүснэгтүүд эсвэл үндсэн хүснэгтүүдийн дурын
талбаруудаар тодорхой нөхцөл хангасан байхаар харуулна. Ихэвчлэн FlexGrid
удирдах элементийг ашиглан хийх боломжтой байдаг.
Find Мeтод: Data 1 data control удирдах элементэд хавсрагдсан хүснэгтэд
SQL илэрхийллийн бичлэгээр хайлт хийж болно.
Бичигдэх ерөнхий хэлбэр нь: Data1.RecordSet.FindFirst.criteria
Эхний бичлэгээс эхлээд тухайн шалгуурт тохирох нөхцөлөөр хайлт
хийгдэнэ. Хайлт нь FindLast, FindNext, ба FindPrevious функцүүдыг ашиглан
явагддаг.
FLEXGRID удирдах элемент хэрэглэх: FlexGrid удирдах элемент нь
хүснэгтийн бүх агуулгыг дэлгэц дээр харуулна. Хамгийн дээд талын мөрөнд
талбарын нэрүүдийг агуулдаг. Хэрвээ талбарын зарим нэг утгууд урт байвал
Form_Load үзэгдэл дээр өргөнийг нь тодорхойлох методыг ашиглан шинээр
тодорхойлж болдог. Хэдийгээр Flex_Load-ийн баганы агуулгыг өөрчлөхийг код
ашиглан хийж болох боловч өгөгдлийн баазын агуулга өөрчлөгдөхгүй. Түүнчлэн
SQL илэрхийллүүдийг ашиглан тухайн удирдах элемент дээр талбаруудыг
харуулах боломжтой.
Data bound list box ба combobox удирдах элементүүдпйг хэрэглэх:
Data-bound List Box ба Data-bound Combo Box удирдах элементүүд стандарт
удирдах элементүүдтэй төстэй мэт боловч эдгээр удирдах элементүүд нь хэдэн
шинж чанарыг тодорхойлж өгснөөр хүснэгтээс баганы мэдээллийг автоматаар
тохируулан авдаг. Удирдах элементүүд нь хүснэггээс өгөгдлийг дэлгэц дээр
харуулахдаа AddItem, Сlеаг ба RemoveItem методууд, ListCount ба Sorted гэсэн
хоѐр шинжийг ашигладаг. Харин жинхэнэ ListBox ба ComboBox нь ялгаатай.
Data-bound удирдах элементэд агуулагдаж байгаа элементийн тоог
RecordCount шинжээр тодорхойлдог. Data-bound List эcвэл ComboBox
элeментүүдийн хувьд хоѐр түлхүүр шинж болох Row-Source ба List-Field-г
тодорхойлдог. Row-Source Data нь Data удирдах элементэд ба ListField Data
Control-ийн хүснэгтийн талбаруудад хамаардаг.
ADO Data control-ын тухай: Өгөгдлийн баазын application-г бусад орчинд
байгуулах бол Data Source-той ажиллах шаардлага үүснэ. Үүний тулд өгөгдлийн
бааз руу бичих болон уншихад TextBox, CheckBox болон объектууд ашигладаг
энгийн аргууд бий. Энэ нь Data Source-той холбогдох боломжийг олгон холболт
үүсгэх хоѐр зам нь:
- 4. o форм дээр DataControl объектыг ашиглах – хамгийн ерөнхий
баазтай холбогддог объект;
o Data Environment Designer-г хэрэглэн холбогдох.
Data Environment Designer нь хүчирхэг боловч хэд хэдэн алхмаар холболт
хийгддэг. Data Source-д холбогдохдоо ADO DataControl объектыг ашиглана.
Хэрэглэгдэх удирдах элемент нь Data Source-той холбогдох онцлогтой.
Програмын кодонд хамгийн их хэрэглэгддэг объект бол txtName удирдах
элемент бөгөөд энэ тухайн талбарын утгыг агуулдаг. Ингэж удирдах элемент
ашиглахад зөвхөн гурван алхам шаардагдана:
o ADO DataControl-г сонгох ба TextBox-г форм дээр байрлуулна
o DataControl-д өгөгдлийн бааз ба бичлэгийг холбож өгөх
o TextBox-д DataControl ба талбарын утгыг зааж өгнө.
DataControl дахь өгөгдлийн шинж чанар: Data Source-д холбогдох Data
удирдах элементийн шинж чанаруудад ConnectionString, CommandType,
RecordSource гэсэн гурван шинж чанар хамгийн чухал.
CommandType – анхдагч утгаараа энэ шинж нь 8 – adUnknown байх ба
харин үүнийг өөрчлөн тогтоож болно. Жишээ нь:
1 – adCmdText (SQL-ийн илэрхийллүүдийн агуулгыг буцаана);
2 – adCmdTable (хүснэгтийг бүхлээр нь буцаана);
4 – adCmdStoredProc (процедурт агуулагдаж буй агуулгыг буцаана).
RecordSource – CommandType-ийн агуулгад тодорхойлогдсон үед энэ
шинж нь өгөгдлийн баазын хүснэгтэд эсвэл Stored Procedure-д эсвэл
шаардлагатай SQL-ийн бичлэгт тодорхойлогдсон өгөгдлийг холбож өгдөг.
DataGrid нь их хүчрихэг хурдан ажилладаг объект юм. Энэ нь DataSource
шинжээр тодорхойлогдоно. Гэхдээ DataField шинжгүй байдаг.