12
1 Бази на податоци апликацијата MS Access 1. Бази на податоци За компјтерска обработка податоците се организирани во бит, бајт (знак), низа знаци (стринг), поле, сегмент, запис, датотека и база. знак (бајт) : 1 1 0 0 1 1 0 1 поле: знак - 1 знак - i знак - n сегмент: поле - 1 поле - i поле - n запис: сегмент - 1 сегмент - i сегмент - n датотека: запис - 1 запис - i запис- n Најмала организациона единица е бит. Знакот е составен од повеќе бита (8 бита), а повеќе знаци формираат поле. Повеќе полиња формираат сегмент, а записот е составен од повеќе сегменти. Множеството од записи со иста структура (ист број и форма на полињата) се вика датотека. пример за датотека за ученици: р.бр. име презиме матичен број адреса е mail пол број на членска карта датум на зачленување пример за дат. за видеотека: р.бр. наслов жанр главна улога формат година јазик цена Кога е потребно да се обработат повеќе датотеки, тие се поврзуваат во логички систем наречен база на податоци. За да се добијат податоци од претходните два примери, тие се поврзуваат во база. Од претходните примери гледаме дека датотеките најлесно се претставуваат со табели. Затоа се користи терминот поврзување на табели. Табелите се составени од редици и колони. Редиците се записи, а колоните се полиња во

Бази на податоци - gimprilep.edu.mk · Date/Time: за датум и време Currency: ... Со close од file. Прозорецот на access останува

  • Upload
    others

  • View
    6

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Бази на податоци - gimprilep.edu.mk · Date/Time: за датум и време Currency: ... Со close од file. Прозорецот на access останува

1

Бази на податоци апликацијата MS Access

1. Бази на податоци

За компјтерска обработка податоците се организирани во бит, бајт (знак), низа знаци (стринг), поле, сегмент, запис, датотека и база.

знак (бајт) :

1 1 0 0 1 1 0 1

поле:

знак - 1 знак - i знак - n

сегмент:

поле - 1 поле - i поле - n

запис:

сегмент - 1 сегмент - i сегмент - n

датотека:

запис - 1 запис - i запис- n

Најмала организациона единица е бит. Знакот е составен од повеќе бита (8 бита), а повеќе знаци формираат поле. Повеќе полиња формираат сегмент, а записот е составен од повеќе сегменти. Множеството од записи со иста структура (ист број и форма на полињата) се вика датотека.

пример за датотека за ученици:

р.бр. име презиме матичен број

адреса е mail пол број на членска

карта

датум на зачленување

пример за дат. за видеотека:

р.бр. наслов жанр главна улога

формат година јазик цена

Кога е потребно да се обработат повеќе датотеки, тие се поврзуваат во логички систем наречен база на податоци. За да се добијат податоци од претходните два примери, тие се поврзуваат во база. Од претходните примери гледаме дека датотеките најлесно се претставуваат со табели. Затоа се користи терминот поврзување на табели.

Табелите се составени од редици и колони. Редиците се записи, а колоните се полиња во

Page 2: Бази на податоци - gimprilep.edu.mk · Date/Time: за датум и време Currency: ... Со close од file. Прозорецот на access останува

2

записите. Сите записи во табелата се различни. Секој запис има сопствени податоци во полињата со што се карактеризира како посебен објект наречен ентитет. Пр. во првата табела записите се однесуваат на лица, па ентитет е „лице“, а во втората табела записите се за филмови па ентитет е „филмови“. Записите имаат иста структура, т.е. ист број и тип на полиња. Едно поле изразува иста карактеристика на сите ентитети. Пр. полето адреса претставува една карактеристика за ентитетот лице. Или „жанр“ претставува една карактеристика на ентитетот филм. Ваквите карактеристики се викаат атрибути. Значи, секој ентитет има свои атрибути. Една од најпознатите програми за работа со бази на податоци е MS Access. Користењето на програмата ќе го објасниме преку пример за видеотека/деведетека. Пред да почнеме да ја креираме базата, треба да определиме кои ќе бидат нејзини корисници. Треба базата да може да се изменува, проширува и надоградува. Базата може да биде составена од повеќе табели меѓу кои постојат релации. Таквата база е

релациона база на податоци. Податоците што се внесуваат во базата треба да бидат во што е можно попроста форма. Пр. име и презиме да бидат во посебни, а не во едно поле. Исто, и адресата. На почетокот се задава типот на секое поле, т.е. какви податоци ќе содржи полето, текст, број, датум и сл. При пополнување на базата треба да се внимава кое поле ќе биде поставено за т.н. примарен клуч со кој се поставуваат релациите со другите табели во базата. Ќе креираме датотека за видеотека/деведетека. Апликацијата што ќе ја креираме треба:

1. Да овозможи запишување и чување на податоците за филмовите 2. Да овозможи запишување и чување на податоците за корисниците на филмови 3. Да врши запишување и контрола на времето на замање и времето на враќање на филмовите,

доцнењето, губењето, наплатата и сл. 4. Да овозможува анализа на корисниците по пол, старост, интерес за определен жанр 5. Да овозможува изработка на разни извештаи од кои ќе се донесат заклучоци за

подобрувањена работата на видеотеката/ деведетеката Од ова е јасно дека во базата ќе фигурираат само два ентитети: клиенти и филмови. Затоа прво треба да ги дефинираме нивните атрибути: „клиенти“: име, презиме, адреса, телефон, е маил, матичен број „филмови“:наслов, жанр, главна улога, формат, година, јазик, цена Типот на полињата во базата: текстуални: име, презиме, адреса, телефон, е маил, наслов, жанр, флавна улога, формат, јазик. нумерички: матичен број, година и цена.

Може да се случи некои податоци во табелите да се совпаѓаат. Затоа се додава уште една колона – идентификациски број. Најдобро е тој да се генерира автоматски, за да не дојде ист број да се додаде на различни записи. Можноста за грешка при внесувањето се намалува со воведување на т.н. листи на избор.

Тоа се прави каде што е можно. Тоа се следниве податоци: жанр, формат, година и јазик. Пр. листата на избор за жанр може да содржи: драма, акција, комедија, хорор, историски, трилер, авантура, анимиран, компјутерска игра и др. Листата за избор на формат ќе содржи: VHS или DVD. Листата за година на производство може да ги содржи годините од 1900 год. наваму. Листата со јазик: англиски, француски, руски, германски, шпански, италјански и др. Друг начин за намалување на грешките е со предефинирани вредности на некои полиња. Пр. во полето јазик ќе ставиме англиски јазик и ако е јазикот англиски само ќе притискаме ентер. Некогаш во различни табели има полиња со исто име. Пр. ако во база имаме табела со ученици и табела со професори, полињата со име мора да бидат различни, пр. u_ime и p_ime. 2. Стартување на Access

start- all programs – microsoft access Се отвора прозорец во кој може да отвориме постоечка датотека со open... или да креираме

Page 3: Бази на податоци - gimprilep.edu.mk · Date/Time: за датум и време Currency: ... Со close од file. Прозорецот на access останува

3

нова со create a new file...Има избор за креирање база со користење на готови обрасци (templates) или со избор на blank database... Ќе креираме со избор на blank database... Се отвора прозорец File New Database . Се внесува името на датотеката во која ќе биде новата база и папката во којаќе биде сместена. Името нека биде PrvaBaza и сместена во папка со ваше име. Потоа се кликнува на копчето create. Се опишува работниот прозорец, лента со наслов, главно мени, ленти со алатки... Прозорецот на PrvaBaza содржи посебна лента со алатки: open, design, new и четири алатки за подредувањена командите за различните начини на креирање на објектите во рамката objects поставена лево во прозорецот. Рамката objects содржи објекти кои се креираат при изработката на базата. При кликнување на некој од објектите од рамката objects во работниот простор се појавуваат команди за начините на кои може да се креира тој објект. Секоја база содржи повеќе табели прашалници, форми и извештаи. Табелите ги објаснивме. Прашалниците служат за поставување прашања чии одговори се добиваат од податоците зачувани во табелите. Формите се објекти преку кои се внесуваат податоците, а може да се врши и преглед на внесените податоци. Крајниот резултат на апликацијата за работа со базата на податоци покрај директните одговори на прашалниците се извештаите. Тие содржат податоци добиени со комбинирање на податоците од табелите. Првата табела ќе ја креираме со податоци за „лица“. Во првата колона внесуваме имиња на полињата, а во втората типот на полето. Типот може да биде: Text: за текстуални податоци – до 255 знаци. Пр. тел. бр, име, презиме и т.н. Memo: за подолги коментари до 65535 знаци Number: за број (цел или децимален) Date/Time: за датум и време Currency: за парични вредности, до 15 цели места и 4 децимални места Autonumber: за автоматско нумерирање на записите во табелата при нивното внесување Yes/ No: за логички вредности true/ false, on/off, yes/no. OLE objects: за други објекти, како excel табели, word документи, слика, цртеж, звучна датотека и сл. Hyperlink: за интернет адреса Lookup wizard: за полиња кои се пополнуваат со вредности од други табели или од листи со вредности.

2. Форматирање на полињата во табелата

Формати за броеви - се кликнува на типот на полето, потоа долу во листот general се кликнува на format. Со клик на стрелката десно се отвора листа со можности и се избира саканиот формат. Формати за датуми – исто, се избира саканиот облик на датум, пр. ShortDate. Формат за полето цена – currency , форматот што е претставен со денари. По пополнувањето на табелата треба да се постави т.н.примарен клуч (Primary key). Се користи за поврзување на табелата со други табели во базата.

Page 4: Бази на податоци - gimprilep.edu.mk · Date/Time: за датум и време Currency: ... Со close од file. Прозорецот на access останува

4

Примерниот клуч е поле кое најмногу го карактеризира ентитетот на табелата и кое не се менува. Пр. во табелата „лица“ тоа би било полето „матичен број“ (ЕМБГ) бидејќи тој е единствен што го идентификува секое лице. Не е добро да се постави полето „име“ или „презиме“ бидејќи различни лица може да имаат исто име или презиме. За да се избегнат грешките при поставување примарен клуч, во табелата се дефинира поле за примарен клуч, наречено поле за идентификација со тип AutoNumber.

Примарен клуч се поставува со клик на полето и клик на иконата со клуч од лентата со алатки. Ако по грешка го поставиме, со клик пак на клучот, се брише и може да поставиме друго поле за примарен клуч. Табелата ќе ја пополниме со следниве полиња: табела 1: Ако не поставиме примарен клуч, се јавува порака за да се креира примерен клуч. Табелата ја зачувуваме под име „klienti“. На ист начин ја креираме и табелата „filmovi“. Првото поле кое содржи број за идентификација на филмот го поставуваме за примарен клуч. Табела 2:

Page 5: Бази на податоци - gimprilep.edu.mk · Date/Time: за датум и време Currency: ... Со close од file. Прозорецот на access останува

5

3. Отворање, прикажување и уредување на табела

Се отвора базата, потоа: � со open од лентата со алатки за отвораме базата за уредување (измена ) на податоците во

неа, � со design од лентата со алатки за отвораме базата за уредување (измена ) на дизајнот на

табелата (полињата во табелата). � Со design view се прикажува дизајнот (структурата) на табелата � Со datasheet view за приказ на командите.

4. Означување на поле лево пред првата ќелија, и клик. 5. Додавање полиња во табелата

На крајот од табелата се додава со едноставно внесување на податоците во табелата. Вметнување поле над постоечко поле: покажувачот се позиционира на полето над кое сакаме да додадеме ново, и на лентата со алатки клик на иконата или до менито insert – rows.

6.Преместување на поле

Се означува полето што сакаме да го преместиме, со притиснато копче од глувчето го влечиме полето на новата позиција.

7. Бришење на поле

Се означува полето и delete од тастатурата или на алатката од главното мени.

8. Затворање на базата

Со close од file. Прозорецот на access останува отворен и можеме да работиме со друга база. Истовремено може да се работи само со една база. 9.. Отворање на постоечка база

Со open од file. Се бара надворешната меморија и името под кое е снимена базата. 10. Излегување од access

file – exit. 11. Задавање на претходно дефинирани вредности

Заради избегнување грешки при внесувањето на податоците, кога се внесуваат претходно дефинирани вредности тие се задаваат при креирањето на табелата. Претходно дефинираните вредности може да се зададат од листа, друга табела или со внесување. Постапката е: − се отвора табелата во design table − е кликнува на lookup wizard... се отвора истоимен прозорец и се избира втората можност (да се внесуваат саканите вредности) и клик на next. − во следната содржина од истиот прозорец во полето number of columns се внесува бројот на

колони т.е. претходно дефинирани вредности што ќе се внесат. Најчесто тоа е една колона т.ш. претходно дефинираните вредности ќе се листаат и избираат од една колона. По внесувањето на вредностите finish.

− Пр. во нашата табела, во полето „пол“ ќе ставиме маж, жена, а во табелата „филмови“ за полињата жанр, формат и јазик ќе ставиме:

Page 6: Бази на податоци - gimprilep.edu.mk · Date/Time: за датум и време Currency: ... Со close од file. Прозорецот на access останува

6

жанр: акција, авантура, анимиран, драма, историски, комедија, научна фантастика, трилер и хорор. формат: VHS, DVD година на производство: 1900 до 2100 јазик: македонски, англиски, француски, германски, италијански, руски.

Задавање претходно дефинирани вредности може да се врши и од друга табела. За да го видиме тоа, ќе креираме трета табела во базата. Треба и да ги поврземе табелите klienti i filmovi за да може да работи. Нејзина работа е кога некое лице ќе изнајми филм, да се запише клиентот, филмот што го изнајмил и датумот на изнајмување. При враќање на филмот, да се запише датумот на враќање и цената што ја платил клиентот. Затоа треба да креираме уште една табела што треба да ги содржи овие податоци.

клиент ид_позајмува-ње

име презиме

наслов на филмот

дата на позајмување

дата на враќање

1 Ива Иваноска Смртоносно оружје

3.10.2010 год. 6.10.2010 год.

Ја креираме исто како и првите две табели, но не ги внесуваме податоците од табелите klienti i filmovi. Тоа е и суштината на базите наподатоци, што помалку да се повторуваат исти податоци во различни табели. Името и презимето го има во табелата klienti, па нема да ги внесуваме, туку оваа табела ќе ја поврземе со табелата клиенти. Поврзувањето се врши преку полето што е клуч во табелата а тоа е k_id. Затоа исто такво поле поставуваме и во новата табела. Исто, и имињата на филмовите нема да ги внесуваме, туку ќе ја поврземе со табелата филмови преку полето f_id кое е клуч за табелата филмови. Полињата k_id i f_id се клучеви во соодветните табели и се нарекуваат надворешни клучеви. Во навата табела првото поле p_id ќе го поставиме за примарен клуч и името на табелата е pozajmuvanja.

Page 7: Бази на податоци - gimprilep.edu.mk · Date/Time: за датум и време Currency: ... Со close од file. Прозорецот на access останува

7

12. Поставување подразбирлива вредност

Ако вредноста на некое поле е иста за сите записи или се јавува во повеќето записи, таа се поставува како подразбирлива вредност. (default value). Прво се означува типот на полето, и во долниот дел од проорецот се јавува листот general. Во него во полето default value се испишува вредноста. Пр. најголемиот број на филмови се на англиски јазик, па за полето f_jazik ќе поставиме подразбирлива вредност angliski jazik. При пополнување, ако филмот е на англиски јазик, преминуваме на ново поле, а ако не е, избираме друга вредност од листата претходно дефинирани вредности. 13. Директно внесување на податоци

Се отвора табелата во Datasheet view. Во полето autoNumber не се внесуваат податоци. Се внесуваат вредности, а од полињата со предефинирани вредности, тие се избираат од опаѓачка листа. Копирање, пренесување и бришење е исто. Бришење цел запис: тој се означува и delete од тастатурата или од менито file. Пополнете ги табелите „клиенти“ и „филмови“. 14. Поставување релации меѓу табелите

Релациите меѓу табелите мора да бидат логички. Така, во нашиот пример: − еден клиент да позајмува филмови многу пати − еден филм да биде позајмен многу пати

Значи врската меѓу табелата „клиенти“ и табелата „позајмувања“ како и меѓу „филмови“ и „позајмувања“ мора да биде еден према многу. Се означува 1:n (1: ��� Ова значи дека има само еден запис во табелата „клиенти“ со одреден идентификациски број (k_id) а може да има многу записи во табелата „позајмувања“ со истиот идентификациски број бидејќи еден клиент може да позајмува повеќе пати. Исто и во „филмови“. Во табелаата „филмови“ има само еден запис со идентификациски број f_id, а може да има многу записи во табелата „позајмувања“ со истиот идентификациски број бидејќи еден филм може да биде позајмен повеќе пати. При 1:n релациите примарниот клуч во табелата (1) се поставува за надворешен клуч во табелата (n). Најмногу релации во базите се 1:n. Покрај релацијата 1:n може да се постави и релација 1:1 (еден спрема еден) како и релација n:n (многу спрема многу).

Page 8: Бази на податоци - gimprilep.edu.mk · Date/Time: за датум и време Currency: ... Со close од file. Прозорецот на access останува

8

пр. ако имаме табела со класови и табела со професори, бидејќи во многу класови предаваат исти професори, многу записи од табелата со класови ќе содржат ист професор. Исто, бидејќи еден професор предава во повеќе класови, многу записи од табелата со професори ќе содржат ист клас. Па овде релацијата е n:n. Релацијата n:n не е поддржана па затоа се разрешува со воведување на меѓутабела со која двете тебели се поврзуваат со релација 1:n. Релацијата 1:1 не е вообичаена бидејќи од две табели со ваква релација може да се направи една табела. Но, некогаш таа е пожелна. Пр. за вработените во една организација и нивните плати обично се прави една табела. Но, пожелно е да се направата две табели, една за вработените, а друга за платите при што и во двете табели примарниот клуч би бил ист бидејќи една плата припаѓа на еден вработен и и обратно. Табелите се поврзуваат преку еквивалентни полиња т.е.полиња коисодржат ист тип податоци. Полињата не мора да имаат исти имиња. Обично врската се поставува меѓу полето кое е примарен клуч во табелата и поле од друга табела кое одговара на тоа од првата. Во нашиот пример:

− Клик на алатката relationships од менито tools или од лентата со алатки. Се отвора прозорец relationships и врз него дијалог – прозорецот show table.

− Ги селектираме табелите меѓу кои поставуваме релации и клик на копчето add. Во прозорецот relationships се прикажуваат мали прозорчиња со означените табели и полињата во нив. Полињата кои се поставени за примарни клучеви се напишани со задебелени букви. − Го затвораме прозорчето show table − клик на k_id од табелата „клиенти“ и држејќи го притиснато го влечеме до полето k_id од

табелата „позајмувања“. Се отвора прозорецот edit relationships во која се прикажуваат полињата од табелите што се поврзуваат.

Најдолу во ова прозорче се испишува типот на релацијата one-to-many. (добро е да се кликна во квадратчето пред enforce referential integrity со што се зачувува интегритетот на релацијата. Потоа се кликнува на create и се затвора прозорецот edit relationships и се прикажува врската меѓу двете табели. Врската е означена на едниот крај со 1 а на другиот сo �� На ист начин се поврзуваат и табелите „филмови“ и „позајмувања“, полињата f_id.

− Се затвора прозорецот relationships. 15. Уредување на релации меѓу табелите

Со двоен клик на линија (релација) меѓу две табели се отвора прозорецот edit relationships каде може да се изменуваат релациите. Со клик на копчето Join Type... се отвора прозорец од кој може да се постави еден од трите наведени типа релации. Обично се поставува првиот тип. Со клик на копчето create new... се отвора прозорец од кој може да се внесат податоци (табели и полиња) за креирање нова релација.

16. Бришење на поставена релација

клик на неа и delete од тастатурата. � Размествање на табелите

со влечење на табелата на лентата со наслов Менување на големината на табелата

исто како на прозорец 17. Додавање на табела во прозорецот relationships

со show table od relationships при што се отвора прозорецот show table. Се кликнува на името на табелата и потоа на копчето add.

18. Креирање формулари

− Во прозорецот на базата се кликнува на објектот forms. − клик на create form by using wizard и потоа на копчето new. Се отвора прозорецот new form. − во прозорецот new form клик на form wizard а потоа на стрелката на десниот дел на полето

choose the table or query where the objects data cames from. Се отвора листа на табели и прашалници што се креирани во базата. Значи формулар може да се направи според табела или според прашалник.

Page 9: Бази на податоци - gimprilep.edu.mk · Date/Time: за датум и време Currency: ... Со close од file. Прозорецот на access останува

9

− избираме табела, пр. klienti. − клик на ок. − се отвора прозорец form wizard од каде се избираат полињата кои ќе бидат поставени на

формуларот. − Во формуларот може да се постават полиња од различни табели. − од листата available fields ги избираме полињата и ги внесуваме (со клик) во полето selected

fields.Потоа next овој формулар ги содржи полињата: k_id, k_ime, k_prezime, k_adresa, k_telefon, k_email, k_licnakarta, k_embg, k_pol, k_clenskakarta, k_zaclenuvanje

− во следната содржина на истиот прозорец се избира изгледот на формуларот од понудените 6. Ќе избереме Columnar т.е. полињата да бидат во една колона и next.

− следната содржина служи за избор на стилот н полињата кои ќе бидат поставени во формуларот. Избираме standard и next.(лево може да се види како изгледа избраниот стил).

− се задава името на формуларот (пр. formKlienti) и ок. Формуларот веднаш се прикажува. Во него се прикажани податоците на првиот запис од табелата klienti. Најдолу на формуларот се прикажува бројот на тековниот запис и копчиња за листање на записите. (прв, претходен, следел, последен, крај на формуларот). Најдесно од копчињата се испишува вкупниот број на записи во формуларот. Формуларот може да се прикажи во неколку погледи со клик на алатката (триаголник со лењир и молив). Нас ни е познат погледот datasheet view во кој можеме формуларот да го уредуваме како и табелите.

19. Уредување на формуларот

Се уредува во design прказот. За полесно уредување прозорецот можеме да го рашириме. Формуларот има три дела: from header – најгоре, from footer – најдолу,detail – на средина. Нивната големина може да се менува со доведување на покажувачот на некоја од границите. (како што се менува висина и ширина на колона / ред во табела). Прво полето со телефон ќе го пренесеме најдолу под полето за датумот на зачленување. Покажувачот е на средина на полето во форма на дланка и влечиме. Ако покажувачот го донесеме на најгорното лево квадратче, тој се претвора во дланка со испружен показалец и се пренесува само името на полето. Секое поле има два дела: едниот е името на полето, а во другиот се кликнува за да се избере нешто или да се запише. Вториот дел се нарекува контрола (control), а првиот е име на комтролата (control label). Контролата е поврзана со поле од табелата со цел вредноста што ќе се внесе преку контролата да се зачува во полето од табелата. За уредување на формуларот т.е. додавање контроли се користат алатките (копчињата за контроли) од алатникот toolbox кој се отвора со клик на алатката. Може да се избере кои копчиња ќебидат прикажани а кои не. Прво ќе ги смениме имињата на контролите и фонтот во кирилица. Се означува името на контролата и се избира фонт. Потоа клик на името и ако сакаме може да го смениме. Имињата на полињата во контролите со кои е поврзана контролата не се променети. Ако го погледнеме формуларот во form view и некои полиња се премали или преголеми за податоците што се внесуваат во нив, може да се вратиме во design view и да ги измениме димензиите на полето. Треба да поставиме во формуларот копчиња за бришење на запис, за зачувување на запис и за затворање на формуларот:

− клик на алатката за контроли од toolboxпо што се сменува покажувачот и со него кликнуваме на местото каде сакаме да го поставиме копчето

− се отвора прозорец command button wizard од каде се избира командата што ќему ја доделиме на копчето. Во нашиов пример, за затворање на формуларот кликнуваме на категоријата form operations во левата рамка а потоа командата close form во десната рамка.

− next − во следниот прозорец, клик на text и во полето пишуваме „затвори“. Ако сакаме копчето

Page 10: Бази на податоци - gimprilep.edu.mk · Date/Time: за датум и време Currency: ... Со close од file. Прозорецот на access останува

1

даима слика, клик на picture, клик на show all pictures за да се прикажат сликите и избираме слика.

− next − се задава името на копчето за да може да се користи во други формулари.

Сега може да се смени фонтот, големината и позицијата на копчето со негово означување и отворање во form view. Со горната постапка во прозорецот formKlienti може да ги поставиме копчињата „зачувај“ и „бриши“. Овие може да се постават со слики, а до нив се полиња со команди т.е.лабели. Лабелите се поставуваат на ист начин, но се користи алатката за лабела. Во лабелите се пишува името и се поставува соодветно копче. Промена на насловот на формуларот: во form view клик на десното копче од лентата со наслов од менито што се отвора клик на properties во полето caption од листот format се пишува насловот на формуларот Формулар за табелата „филмови“: f_id, f_naslov, f_zanr, f_glavnauloga, f_format, f_godina, f_jazik, f_cena. (затвори е команда, избриши е лабела со слика корпа за ѓубре, зачувај е лабела со слика дискета). Формулар за табелата „позајмувања“: k_id, k_id, f_id, p_data_iznajmuvanje, p_data_vrakanje (затвори е команда, избриши е лабела со слика корпа за ѓубре, зачувај е лабела со слика дискета). За внесување на нов запис се кликнува на копчето „крај на формуларот“ со што се отвора нов формулар. Полињата со стрелка десно содржат претходно дефинирани вредности за избор. По внесување на податоците, „зачувај“. притоа вкупниот број ан податоци автоматски се зголемува. За да избришеме запис, го наоѓаме и клик на „избриши“. Се затвора со клик на „затвори“.

20. Креирање прашалници

За да се постави прашање и да се одговори на него треба да се изработи прашалник. Прашалниците се зачувуваат и може да се користат кога било. Се креира на сл.начин:

− Се отвора базата и во рамката objects се избира qweries. Има два начини, со: − create qwery in design view − create qwery by using wizard − клик напрвиот начин и на алатката new. − клик на design view, ok. − Од select qwery – show table − од прозорецот show table се додаваат табелите чии полиња ќе се користат во изработката на

праалникот. Ги внесуваме трите табели со клик на add. се затвора прозорецот show table. Во долниот дел од прозорецот select qwery ги внесуваме

полињата што ни се потребни во прашалникот. (совлечење или со двоен клик на полето.). Ќе изработиме прашалник за: кои филмови ги има земено одреден клиент?

− во првата ќелија од првиот ред field го влечиме полето k_ime од табелата klienti, во втората ќелија k_prezime од табелата klienti, а во третата ќелија од редот field: полето f_naslov од табелата filmovi.

− во редот criteria го пишуваме името и презимето наклиентот за кој поставуваме прашање. − за да го добиеме одговорот кликнуваме на копчето како табела од лентата со алатки и се

преминува во datasheet view. − save и прашалникот го зачувуваме под име prasalnikklient

Критериуми во прашалниците

Критериумот што го зададовме е AND критериум, т.е. двата услови треба да се исполнети. Критериумите може да бидат OR. Се поставуваат во редицата or и значи дека треба да биде исполнет барем еден услов. При креирање критериуми може да се користат следниве оператори: =, <, >, <=, >=, <>, not, or, and, like, between. Пр. ако сакаме да дознаеме со кои акциски или авантуристички филмови располага деведетеката ќе го креираме прашалникот:

Page 11: Бази на податоци - gimprilep.edu.mk · Date/Time: за датум и време Currency: ... Со close од file. Прозорецот на access останува

1

field: f_zanr, f_format, f_naslov (od filmovi) criteria: „akcija“, „DVD“ or: „avanturisticki“, „DVD“ Во критериумите може да се користи и * - заменува група знаци и ? - заменува еден знак. ПР. кои филмови ги изнајмил одреден клиент во месец мај?

field: k_ime, k_prezime (od klienti), p_datapozajmuvanje, f_naslov (od filmovi) criteria: ime, prezime, between 1.05.2005 and 31.05.2005 ili like „*05“ Полиња за пресметани вредности

Во прашалниците може да се дефинираат полиња во кои ќе се пресметува одредена вредност со функции или изрази. Функциите ги има во редот total. Со клик на ќелија од овај ред се отвора листа на расположиви функции. Пр. 1. прашалник за: кои се најгледани филмови, колку заработил секој филм

Потребни ни се полиња од табелите filmovi i pozajmuvawa и само тие две табели ќе ги додадеме во прашалникот. Во прашалникот ги додаваме полињата: f__naslov, f_id, (za da se brojat pozajmuvawata na sekoj film), f_cena (за да пресметаме колку заработил секој филм поединечно). Потоа кликнуваме на знакот за сума од лентата со алатки и се отвора нова редица со име total. Во неа под секое од внесените полиња ќе се испише group by. Овие полиња ќе ги уредиме:

1. клик на редицата total на полето f_id и клик десно на стрелката од листата со функции избираме count.

2. на ист начин во редицата total под полето f_cena ја поставуваме функцијата sum. 3. со клик на стрелката надолу во редицата sortво полето f_id избираме дали да се сортираат

по растечки или опаѓачки регослед. Клик на descending. 4. може истото и во полето f_cena.

Во datasheet view се добиваат одговорите на поставеното прашање. пр.2. колку позајмувања направил секој клиент?

колку платил за сите позајмувања?

колку просечно платил за позајмување на еден филм?

кој е најдобар клиент според износот на платеното?

Потребни се полињата од сите табели. Сакаме список на клиенти по име и презиме, број на позајмувања за секој клиент, колку платил секој клиент месечно за позајмувањата и просечно за еден позајмен филм. Ги внесувамее полињата k_ime, k_prezime, k_id od pozajmuvawa. За полето k_id ја задаваме функцијата count која ќе брои колку позајмувања направил секој клиент. За да пресметаме колку платил, треба да ја знаеме цената за изнајмување на секој филм и колку дена го држел филмот. Во табелата filmovi се дадени цените за изнајмување на филмовите во полето f_cena за еден ден. Во табелата pozajmuvawa познати се датумите за земање и враќање на филмот. Од нивната разлика ќе пресметаме колку дена е изнајмен филмот. Во access: оператори за аритметички операции:+, -, *, /, \, mod оператори за логички операции: and, or, not, xor, ekv, imp функции за операции со текст: & - i left([ime], 1) – prvata bukva od poleto ime right([prezime], 3) – poslednite 3 znaci od poleto prezime mid([zbor];5,2) – gi dava 2-ta znaci pocnuvajki od 5-ot znak функции за операции со датум и време:

DateDiff('d';[edendatum];[drugdatum]) – разлика на два датуми изразена во денови DataPart('yyyy';[datum]) – годината од датумот DataPart('m';[datum]) – месецот од датумот DataPart('d';[datum]) – денот од датумот Data() - денешниот датум Time() - времето

Page 12: Бази на податоци - gimprilep.edu.mk · Date/Time: за датум и време Currency: ... Со close од file. Прозорецот на access останува

1

Now() - датум и време

Во примерот: Vkupno:sum([f_cena]*([p_datavrakanje] – [p_dataiznajmuvanje])) во петтата колона: prosek:avg([f_cena]*([p_datavrakanje] – [p_dataiznajmuvanje])) ili: prosek:avg([f_cena]*DateDiff('d';[p_dataiznajmuvanje];[p_datavrakanje])) Со ова имињата на полињата се vkupno i prosek. Во редицата total автоматски се испишува expression. Податоците ги сортираме по „вкупно“ во опаѓачки редослед.

21. Изработка на извештаи

За преглед на поголем број на податоци се изготвуваат извештаи. Тоа се формулари подготвени за печатење на разни податоци од базата. Податоците може да се групираат, или да се пресметува во нови полиња. Се гледаат само со погледот printpreview. Податоците во извештајот може да е од една или повеќе табели. Ако податоците се од повеќе табели, прво се изготвува прашалник, а потоа според прашалникот се изготвува извештај.

− report od objects − се избира create report by using wizard со двоен клик на него − од листата tables/qweries избираме табела или прашалник врз кој се базира извештајот − од рамката available fields во рамката selected fields ги префрламе оние полиња од табелата

filmovi чии податоци сакаме да бидат во извештајот, потоа next. − може да се групираат податоците по некое поле. Ние ќе ги групираме по жанр и тоа поле се

внесува во десната рамка, next. − се избираат до 4 полиња и начинот на сортирање: растечки или опаѓачки. − има повеќе изгледи на извештајот (layout) и ориентација на листот landscape ili portraid. − се избира стил − наслов на извештајот, finish.

print preview гледаме како ќе изгледа извештајот. Извештајот може да се уредува во design view и со алатките од алатникот toolbox. Број на филмови може да се внесе со клик на алатката 'ab' od toolbox. Во полето се пишува формулата во форма =f([]). = е задолжителен, f – еформулата, а во []е полето. Така: =count([f_id]).