20090510 unicheats.net 520_6094

35
УНСС - УНСС - Катедра “Информационни Катедра “Информационни технологии и комуникации” технологии и комуникации” Тема Тема 5 5 Бази данни Бази данни СУБД СУБД MS Access 2007 MS Access 2007

Transcript of 20090510 unicheats.net 520_6094

Page 1: 20090510 unicheats.net 520_6094

УНСС -УНСС - Катедра “Информационни технологии Катедра “Информационни технологии и комуникации”и комуникации”

Тема Тема 55

Бази данниБази данни

СУБД СУБД MS Access 2007MS Access 2007

Page 2: 20090510 unicheats.net 520_6094

СУБД СУБД MS AccessMS Access

Microsoft Office Access 2007 е СУБД, която Microsoft Office Access 2007 е СУБД, която поддържа релационен модел на данните, т.е. поддържа релационен модел на данните, т.е. информацията е организирана в таблици информацията е организирана в таблици

В повечето бази данни са необходими повече от В повечето бази данни са необходими повече от една таблициедна таблици

Например в една база данни за бизнес Например в една база данни за бизнес информация може да има таблици за информация може да има таблици за съхранение и обработка на информацията за:съхранение и обработка на информацията за:

1.1. Продукти,Продукти,2.2. Поръчки,Поръчки,3.3. Клиенти,Клиенти,4.4. Доставчици;Доставчици;

Page 3: 20090510 unicheats.net 520_6094

СУБД СУБД MS AccessMS Access

Всеки ред се нарича още запис, а всяка колона се Всеки ред се нарича още запис, а всяка колона се нарича поленарича поле

Записът е последователен начин за обединяване Записът е последователен начин за обединяване на информацията за обектана информацията за обекта

Полето е един отделен елемент от Полето е един отделен елемент от информацията – един тип елемент, който се информацията – един тип елемент, който се появява във всеки един записпоявява във всеки един запис

В таблицата "Продукти" например всеки ред или В таблицата "Продукти" например всеки ред или запис съдържа информация за един продуктзапис съдържа информация за един продукт

Всяка колона или поле съдържа някакъв вид Всяка колона или поле съдържа някакъв вид информация за този продукт като названието информация за този продукт като названието или цената муили цената му

Page 4: 20090510 unicheats.net 520_6094

СУБД СУБД MS AccessMS Access

Page 5: 20090510 unicheats.net 520_6094

СУБД СУБД MS AccessMS Access

Една база данни може да съдържа повече от Една база данни може да съдържа повече от една таблицаедна таблица

Например една система за складово Например една система за складово стопанство, използваща три таблици, не стопанство, използваща три таблици, не съдържа три бази данни, а представлява съдържа три бази данни, а представлява една база данни, съдържаща три таблициедна база данни, съдържаща три таблици

Една база данни на Access съхранява своите Една база данни на Access съхранява своите таблици в един единствен файл, заедно с таблици в един единствен файл, заедно с други обекти, каквито са формулярите, други обекти, каквито са формулярите, отчетите, макросите и модулитеотчетите, макросите и модулите

Базите данни, създадени със СУБД Access Базите данни, създадени със СУБД Access 2007, имат файлово разширение .accdb2007, имат файлово разширение .accdb

Page 6: 20090510 unicheats.net 520_6094

СУБД СУБД MS AccessMS Access

Елементите на една база данни на Access са:Елементите на една база данни на Access са: Таблици,Таблици, Формуляри,Формуляри, Отчети,Отчети, Заявки,Заявки, Макроси,Макроси, Модули;Модули;

Page 7: 20090510 unicheats.net 520_6094

СУБД СУБД MS AccessMS Access

СУБД Access поддържа:СУБД Access поддържа: Език за описание на данни,Език за описание на данни, Език за манипулиране на данни,Език за манипулиране на данни,Езикът за описание на данни позволява:Езикът за описание на данни позволява: Да описвате структурата на таблиците, Да описвате структурата на таблиците,

формулярите, заявките и отчетите,формулярите, заявките и отчетите, Да променяте (актуализирате) Да променяте (актуализирате)

определена структура, например да определена структура, например да добавите нова колона на таблицатадобавите нова колона на таблицата;

Page 8: 20090510 unicheats.net 520_6094

СУБД СУБД MS AccessMS Access

Езикът за манипулиране на данните, позволява:Езикът за манипулиране на данните, позволява: Да добавяте нови записи в базата данни, Да добавяте нови записи в базата данни,

например данни за нови продукти,например данни за нови продукти, Да редактирате съществуващи данни в Да редактирате съществуващи данни в

базата данни, например да променяте базата данни, например да променяте единичните цени на продуктите,единичните цени на продуктите,

Да изтривате информация, например когато Да изтривате информация, например когато един продукт вече не се предлага или е един продукт вече не се предлага или е бракуван,бракуван,

Да организирате и показвате данните по Да организирате и показвате данните по различни начини,различни начини,

Да споделяте данните с други потребители Да споделяте данните с други потребители чрез отчети, имейли, интранет или Интернетчрез отчети, имейли, интранет или Интернет;

Page 9: 20090510 unicheats.net 520_6094

ТаблициТаблициВсеки ред от таблица се нарича записВсеки ред от таблица се нарича записЗаписите са мястото, където се съхранява информацията Записите са мястото, където се съхранява информацията

за конкретен елемент на обектаза конкретен елемент на обектаВсеки запис се състои от едно или повече полетаВсеки запис се състои от едно или повече полетаПолетата съответстват на колоните в таблицатаПолетата съответстват на колоните в таблицатаНапример в таблица с име “Клиенти", всеки запис (ред) Например в таблица с име “Клиенти", всеки запис (ред)

ще съдържа информация за различен клиент, а всяко ще съдържа информация за различен клиент, а всяко поле (колона) ще съдържа конкретна информация за поле (колона) ще съдържа конкретна информация за клиента, например име на фирма, адрес, град, клиента, например име на фирма, адрес, град, пощенски код и т.н.пощенски код и т.н.

На полетата трябва да бъде присвоен определен тип на На полетата трябва да бъде присвоен определен тип на данните, например за полето име на фирма - текст данните, например за полето име на фирма - текст ((texttext), за полето дата на поръчка - дата ), за полето дата на поръчка - дата (date)(date), за , за полето количество - число полето количество - число (number), (number), за полето за полето единична цена - парична стойност единична цена - парична стойност (currency)(currency), както, както и и да използвате друг типда използвате друг тип

Page 10: 20090510 unicheats.net 520_6094

ТаблициТаблициСъздаване на таблица в Създаване на таблица в Access 2007Access 2007:: Избира се таб Избира се таб Create Create – натиска се бутон – натиска се бутон Table Table

DesignDesign,, в полето в полето Field NameField Name се въвежда името се въвежда името на полето, от списъчното поле на полето, от списъчното поле Data TypeData Type се се избира тип на съхраняваната информация, избира тип на съхраняваната информация, например например AutoNumberAutoNumber, , NumberNumber, , TextText, и т.н.,, и т.н.,

Аналогично се описват останалите полета от Аналогично се описват останалите полета от таблицата,таблицата,

За дефиниране на първичен ключ се маркира За дефиниране на първичен ключ се маркира съответното поле или полета, ако ключът е съответното поле или полета, ако ключът е “съставен” и се натиска бутон “съставен” и се натиска бутон Primary KeyPrimary Key, ,

Натиска се бутон Натиска се бутон CloseClose, бутон , бутон YesYes, въвежда се , въвежда се име на таблицата и се натиска име на таблицата и се натиска OKOK;;

Page 11: 20090510 unicheats.net 520_6094

Релации между таблициРелации между таблициВ Access се използват връзки (релации) между В Access се използват връзки (релации) между

таблиците, за да се обедини информацията, която таблиците, за да се обедини информацията, която ни е необходима за формуляри, заявки и отчетини е необходима за формуляри, заявки и отчети

Връзките биват (1:М), (М:1), (М:М), (1:1)Връзките биват (1:М), (М:1), (М:М), (1:1)Създаване на връзка "един към много“ (Създаване на връзка "един към много“ (1:M1:M))Например, какъв е типът на връзката между Например, какъв е типът на връзката между

таблиците "Доставчици" и "Продукти" в базата таблиците "Доставчици" и "Продукти" в базата данни за поръчки?данни за поръчки?

Един доставчик може да ни снабдява с всякакъв вид Един доставчик може да ни снабдява с всякакъв вид продукти. Следователно за всеки доставчик продукти. Следователно за всеки доставчик представен в таблицата "Доставчици" може да представен в таблицата "Доставчици" може да има много продукти, представени в таблицата има много продукти, представени в таблицата "Продукти“"Продукти“

Поради това връзката между таблицата Поради това връзката между таблицата "Доставчици" и таблицата "Продукти" е от типа "Доставчици" и таблицата "Продукти" е от типа "един към много“ (1:М)"един към много“ (1:М)

Page 12: 20090510 unicheats.net 520_6094

Релации между таблициРелации между таблициЗа да представите връзката "един към много" в проекта За да представите връзката "един към много" в проекта

на базата данни, вземете първичния ключ от на базата данни, вземете първичния ключ от страната "един" на връзката и го добавете като страната "един" на връзката и го добавете като допълнителна колона или колони към таблицата от допълнителна колона или колони към таблицата от страната "много" на връзкатастраната "много" на връзката

В този случай, например, вие добавяте колоната за ИД на В този случай, например, вие добавяте колоната за ИД на доставчик от таблицата "Доставчици" към доставчик от таблицата "Доставчици" към таблицата "Продукти". След това Access може да таблицата "Продукти". След това Access може да използва ИД номера на доставчика в таблицата използва ИД номера на доставчика в таблицата "Продукти", за да намери подходящия доставчик за "Продукти", за да намери подходящия доставчик за всеки продуктвсеки продукт

Колоната с ИД на доставчика в таблицата "Продукти" се Колоната с ИД на доставчика в таблицата "Продукти" се нарича “външен” ключ. Един външен ключ нарича “външен” ключ. Един външен ключ представлява първичен ключ на друга таблицапредставлява първичен ключ на друга таблица

Колоната с ИД на доставчика в таблицата "Продукти" е Колоната с ИД на доставчика в таблицата "Продукти" е външен ключ, защото той също така е първичен външен ключ, защото той също така е първичен ключ на таблицата "Доставчици"ключ на таблицата "Доставчици"

Page 13: 20090510 unicheats.net 520_6094

Релации между таблициРелации между таблициЧрез обединяване на първични и външни ключове се Чрез обединяване на първични и външни ключове се

осигурява релацията на свързаните таблициосигурява релацията на свързаните таблициАко не сте сигурни кои от таблиците трябва да Ако не сте сигурни кои от таблиците трябва да

“споделят” обща колона, определянето на връзка “споделят” обща колона, определянето на връзка "един към много" обезпечава споделянето на една "един към много" обезпечава споделянето на една колона от двете участващи таблициколона от двете участващи таблици

Page 14: 20090510 unicheats.net 520_6094

Релации между таблициРелации между таблици

Създаване на връзка "много към много“ (М:М)Създаване на връзка "много към много“ (М:М)Да разгледаме връзката между таблицата "Продукти" и Да разгледаме връзката между таблицата "Продукти" и

таблицата "Поръчки"таблицата "Поръчки"Една поръчка може да включва повече от един продуктЕдна поръчка може да включва повече от един продуктОт друга страна един продукт може да се участва в много От друга страна един продукт може да се участва в много

поръчкипоръчкиСледователно за всеки запис в таблицата "Поръчки" Следователно за всеки запис в таблицата "Поръчки"

може да има много записи в таблицата "Продукти“може да има много записи в таблицата "Продукти“И за всеки запис в таблицата "Продукти" може да има И за всеки запис в таблицата "Продукти" може да има

много записи в таблицата "Поръчки“много записи в таблицата "Поръчки“Този тип отношение се нарича връзка "много към много“ Този тип отношение се нарича връзка "много към много“

(М:М), защото за всеки продукт може да има много (М:М), защото за всеки продукт може да има много поръчки, както и за всяка поръчка може да има поръчки, както и за всяка поръчка може да има много продуктимного продукти

Page 15: 20090510 unicheats.net 520_6094

Релации между таблициРелации между таблициВ момента двете таблици, на Поръчките и Продуктите би В момента двете таблици, на Поръчките и Продуктите би

трябвало да имат връзка "Много към много“трябвало да имат връзка "Много към много“Това представлява проблем. За да разберете този проблем, Това представлява проблем. За да разберете този проблем,

си представете какво би се случило, ако се опитате да си представете какво би се случило, ако се опитате да създадете връзката между двете таблици чрез добавяне създадете връзката между двете таблици чрез добавяне на полето "ИД на продукт" към таблицата "Поръчки“на полето "ИД на продукт" към таблицата "Поръчки“

За да имате повече от един продукт на поръчка, ви е За да имате повече от един продукт на поръчка, ви е необходим повече от един запис за тази поръчка в необходим повече от един запис за тази поръчка в таблицата "Поръчки". Т.е. ще се повтаря информация таблицата "Поръчки". Т.е. ще се повтаря информация за поръчката на всеки ред, отнасящ се за даден за поръчката на всеки ред, отнасящ се за даден продукт от поръчката. Резултатът ще бъде продукт от поръчката. Резултатът ще бъде неефективно проектиране и може да доведе до неточни неефективно проектиране и може да доведе до неточни данниданни

Ще срещнете същия проблем, ако поставите полето "ИД на Ще срещнете същия проблем, ако поставите полето "ИД на поръчка" в таблицата "Продукти“, т.е. ще ви е поръчка" в таблицата "Продукти“, т.е. ще ви е необходим повече от един запис в таблицата необходим повече от един запис в таблицата "Продукти" за всеки един продукт от поръчката"Продукти" за всеки един продукт от поръчката

Как се решава този проблем?Как се решава този проблем?

Page 16: 20090510 unicheats.net 520_6094

Релации между таблициРелации между таблициОтговорът се състои в създаването на трета таблица, Отговорът се състои в създаването на трета таблица,

наричана съединителна таблица, която разбива наричана съединителна таблица, която разбива връзката "много към много" на две връзки "един връзката "много към много" на две връзки "един към много". За тази цел вмъкваме първичния ключ към много". За тази цел вмъкваме първичния ключ на всяка от тези две таблици в третата таблицана всяка от тези две таблици в третата таблица

В резултат в третата таблица “Детайли на поръчката” ще В резултат в третата таблица “Детайли на поръчката” ще се записва всяко появяване или случай на връзкатасе записва всяко появяване или случай на връзката

Page 17: 20090510 unicheats.net 520_6094

Релации между таблициРелации между таблициВсеки запис в таблицата “Детайли на поръчката" Всеки запис в таблицата “Детайли на поръчката"

представлява един елемент на ред от поръчкатапредставлява един елемент на ред от поръчкатаПървичният ключ на таблицата “Детайли на поръчката" Първичният ключ на таблицата “Детайли на поръчката"

се състои от две полета – външните ключове от се състои от две полета – външните ключове от таблиците за Поръчки и Продуктитаблиците за Поръчки и Продукти

Използването само на полето "ИД на поръчка" като Използването само на полето "ИД на поръчка" като първичен ключ на тази таблица не е възможно, първичен ключ на тази таблица не е възможно, защото в една поръчка може да има много продукти и защото в една поръчка може да има много продукти и "ИД на поръчка" ще се повтаря за всеки продукт в "ИД на поръчка" ще се повтаря за всеки продукт в поръчката, т.е. полето няма да съдържа уникални поръчката, т.е. полето няма да съдържа уникални стойности, каквото е изискването за ключово полестойности, каквото е изискването за ключово поле

Използването само на полето "ИД на продукт" също не е Използването само на полето "ИД на продукт" също не е възможно, защото един продукт може да се появи в възможно, защото един продукт може да се появи в много различни поръчкимного различни поръчки

Но когато са зададени като съставен ключ, двете полета Но когато са зададени като съставен ключ, двете полета винаги дават уникална стойност за всеки записвинаги дават уникална стойност за всеки запис

Page 18: 20090510 unicheats.net 520_6094

Релации между таблициРелации между таблициВ базата данни за продажба на продуктите, таблицата В базата данни за продажба на продуктите, таблицата

"Поръчки" и таблицата "Продукти" не са свързани "Поръчки" и таблицата "Продукти" не са свързани пряко една с другапряко една с друга

Вместо това те са свързани непряко чрез таблицата Вместо това те са свързани непряко чрез таблицата “Детайли на поръчката““Детайли на поръчката“

Отношението "много към много" между поръчките и Отношението "много към много" между поръчките и продуктите е представено в базата данни чрез продуктите е представено в базата данни чрез използване на две връзки "един към много":използване на две връзки "един към много":

Таблиците "Поръчки" и "Детайли на поръчката" Таблиците "Поръчки" и "Детайли на поръчката" имат връзка “1:М". Всяка поръчка може да има имат връзка “1:М". Всяка поръчка може да има повече от един продукт, но всеки продукт е свързан повече от един продукт, но всеки продукт е свързан само с една конкретна поръчка,само с една конкретна поръчка,

Таблиците "Продукти" и "Детайли на поръчката " Таблиците "Продукти" и "Детайли на поръчката " имат връзка “1:М". Всеки продукт може да е свързан с имат връзка “1:М". Всеки продукт може да е свързан с много поръчки, но всяка поръчка се отнася само за много поръчки, но всяка поръчка се отнася само за един конкретен продуктедин конкретен продукт;

Page 19: 20090510 unicheats.net 520_6094

Релации между таблициРелации между таблициВсички продукти от една конкретна поръчка може да се Всички продукти от една конкретна поръчка може да се

определят от таблицата "Детайли на поръчката“определят от таблицата "Детайли на поръчката“Може също така да се определят всичките поръчки за Може също така да се определят всичките поръчки за

конкретен продуктконкретен продуктСлед включването на таблицата "Детайли на поръчката" След включването на таблицата "Детайли на поръчката"

списъкът на таблиците и полетата може да има списъкът на таблиците и полетата може да има следния вид:следния вид:

Page 20: 20090510 unicheats.net 520_6094

Релации между таблициРелации между таблициСъздаване на връзка "един към един“ (1:1)Създаване на връзка "един към един“ (1:1)Да предположим, че трябва да запишете някаква Да предположим, че трябва да запишете някаква

допълнителна информация за продукта, която ще ви е допълнителна информация за продукта, която ще ви е необходима по-рядко или се отнася само за няколко необходима по-рядко или се отнася само за няколко продуктапродукта

Понеже информацията не ви трябва често и съхранението й в Понеже информацията не ви трябва често и съхранението й в таблицата "Продукти" ще има за резултат празно място таблицата "Продукти" ще има за резултат празно място за всеки продукт, за който не се отнася, можете да я за всеки продукт, за който не се отнася, можете да я поставите в отделна таблицапоставите в отделна таблица

Както при таблицата "Продукти", като първичен ключ ще се Както при таблицата "Продукти", като първичен ключ ще се използва ИД на продукта. Връзката между тази използва ИД на продукта. Връзката между тази допълнителна таблица и таблицата "Продукти" е от типа допълнителна таблица и таблицата "Продукти" е от типа "един към един“"един към един“

За всеки запис в таблицата "Продукти" съществува един За всеки запис в таблицата "Продукти" съществува един съответстващ запис в допълнителната таблица. След съответстващ запис в допълнителната таблица. След като е определена такава връзка, и двете таблици трябва като е определена такава връзка, и двете таблици трябва да споделят общо поледа споделят общо поле

Page 21: 20090510 unicheats.net 520_6094

Релации между таблициРелации между таблициКогато откриете необходимост от връзка "един към Когато откриете необходимост от връзка "един към

един" за базата данни, обмислете дали не може да един" за базата данни, обмислете дали не може да сложите информация от двете таблици заедно в една сложите информация от двете таблици заедно в една таблицатаблица

Ако не искате да правите това поради някаква причина, Ако не искате да правите това поради някаква причина, вероятно поради получаването на много празно вероятно поради получаването на много празно място, следващият списък показва как би трябвало място, следващият списък показва как би трябвало да представите връзката в проекта си:да представите връзката в проекта си:

Ако двете таблици имат един и същ обект, вероятно Ако двете таблици имат един и същ обект, вероятно можете да зададете връзката като използвате един и можете да зададете връзката като използвате един и същ първичен ключ за двете таблици,същ първичен ключ за двете таблици,

Ако двете таблици имат различен обект, с различни Ако двете таблици имат различен обект, с различни първични ключове, изберете една от таблиците (без първични ключове, изберете една от таблиците (без значение коя) и вмъкнете първичния й ключ в значение коя) и вмъкнете първичния й ключ в другата таблица като външен ключ;другата таблица като външен ключ;

Page 22: 20090510 unicheats.net 520_6094

Релации между таблициРелации между таблици

Определянето на връзките между таблиците ще Определянето на връзките между таблиците ще ви помогне да се уверите, че имате правилно ви помогне да се уверите, че имате правилно проектирани таблици и колонипроектирани таблици и колони

Когато съществува връзка от типа "един към Когато съществува връзка от типа "един към един" или "един към много", участващите един" или "един към много", участващите таблици трябва да “споделят” обща колона таблици трябва да “споделят” обща колона или колониили колони

Когато съществува връзка от типа "много към Когато съществува връзка от типа "много към много", за представяне на връзката е много", за представяне на връзката е необходима трета таблицанеобходима трета таблица

Page 23: 20090510 unicheats.net 520_6094

ФормуляриФормуляри

Формуляри понякога се наричат "екрани за Формуляри понякога се наричат "екрани за въвеждане на данни“ или “входни” формивъвеждане на данни“ или “входни” форми

Те са интерфейсите, използвани за работа с вашите Те са интерфейсите, използвани за работа с вашите данни, и често съдържат командни бутони, които данни, и често съдържат командни бутони, които изпълняват различни командиизпълняват различни команди

Можете да създадете база данни, без да използвате Можете да създадете база данни, без да използвате формуляри, като просто редактирате данните в формуляри, като просто редактирате данните в листа с данни на таблицаталиста с данни на таблицата

Повечето потребители на базите данни обаче Повечето потребители на базите данни обаче предпочитат да използват формуляри, за да предпочитат да използват формуляри, за да преглеждат, въвеждат и редактират данните в преглеждат, въвеждат и редактират данните в таблицитетаблиците

Page 24: 20090510 unicheats.net 520_6094

ФормуляриФормуляриФормулярите предоставят лесен за използване формат за Формулярите предоставят лесен за използване формат за

работа с данните, а вие можете да добавяте към тях работа с данните, а вие можете да добавяте към тях функционални елементи, като командни бутонифункционални елементи, като командни бутони

Можете да програмирате бутоните, за да задавате кои данни да Можете да програмирате бутоните, за да задавате кои данни да се показват във формуляра, да отваряте други формуляри се показват във формуляра, да отваряте други формуляри или отчети или да изпълнявате различни други задачиили отчети или да изпълнявате различни други задачи

Например, във формуляра "Формуляр за клиенти", в който Например, във формуляра "Формуляр за клиенти", в който работите с данни за клиентите, може да има бутон, който работите с данни за клиентите, може да има бутон, който отваря формуляр за поръчки, в който можете да въведете отваря формуляр за поръчки, в който можете да въведете нова поръчка за този клиентнова поръчка за този клиент

Формулярите Ви позволяват също да управлявате Формулярите Ви позволяват също да управлявате взаимодействието на потребителите с данните в базата взаимодействието на потребителите с данните в базата данниданни

Например можете да създадете формуляр, който показва само Например можете да създадете формуляр, който показва само определени полета и разрешава да се извършват само определени полета и разрешава да се извършват само определени операции, което помага за защитата на определени операции, което помага за защитата на данните и за правилното им въвежданеданните и за правилното им въвеждане

Page 25: 20090510 unicheats.net 520_6094

ФормуляриФормуляри

Създаване на формуляри за въвеждане на данни в Създаване на формуляри за въвеждане на данни в таблицитетаблиците (FormForm):

От панела в ляво се избира съответната таблица, От панела в ляво се избира съответната таблица, например Клиенти,например Клиенти,

Избира се таб Избира се таб CreateCreate,, Натиска се бутон Натиска се бутон FormForm, , Натискат се бутоните Натискат се бутоните CloseClose,, YesYes,, OKOK,,Отварянето на формуляра:Отварянето на формуляра: От панела в ляво се избира формулярОт панела в ляво се избира формуляр Клиенти и се Клиенти и се

изпълнява функцията изпълнява функцията Open Open от контекстното меню,от контекстното меню, Въвеждат се данни в таблицатаВъвеждат се данни в таблицата Клиенти,Клиенти, Нов запис се въвежда с бутон Нов запис се въвежда с бутон New New илиили CTRLCTRL + + + + ;;

Page 26: 20090510 unicheats.net 520_6094

ОтчетиОтчетиОтчетите се използват за обобщаване и представяне на Отчетите се използват за обобщаване и представяне на

данните от таблицитеданните от таблицитеОтчетите обикновено отговарят на определен въпрос, Отчетите обикновено отговарят на определен въпрос,

например "Колко пари получихме от всеки клиент например "Колко пари получихме от всеки клиент тази година?" или "От кои градове са нашите тази година?" или "От кои градове са нашите клиенти?“клиенти?“

Всеки отчет може да бъде форматиран, за да представя Всеки отчет може да бъде форматиран, за да представя информацията по възможно най-удобния за четене и информацията по възможно най-удобния за четене и анализ на информацията в него начинанализ на информацията в него начин

Един отчет може да бъде изпълнен по всяко време и Един отчет може да бъде изпълнен по всяко време и винаги ще отразява текущите данни в базата даннивинаги ще отразява текущите данни в базата данни

Отчетите обикновено са форматирани за отпечатване, но Отчетите обикновено са форматирани за отпечатване, но те може също да бъдат разглеждани на екрана, те може също да бъдат разглеждани на екрана, експортирани в друга програма или изпращани като експортирани в друга програма или изпращани като имейли на един или повече получателиимейли на един или повече получатели

Page 27: 20090510 unicheats.net 520_6094

ОтчетиОтчети

Създаване на отчети (Създаване на отчети (ReportsReports):): Избира се таб Избира се таб Create Create и се натиска бутон и се натиска бутон

Report WizardReport Wizard,, От списъчното поле От списъчното поле TablesTables//Queries Queries се избира се избира

например например TableTable: Клиенти,: Клиенти, Натискат се последователно бутоните > >, Натискат се последователно бутоните > >,

NextNext, , NextNext, , NextNext, , NextNext, , NextNext, , Името на отчета може да остане по Името на отчета може да остане по

подразбиране Клиенти, подразбиране Клиенти, Натиска се бутон Натиска се бутон FinishFinish;;

Page 28: 20090510 unicheats.net 520_6094

ЗаявкиЗаявкиЗаявките могат да изпълняват много различни функции, Заявките могат да изпълняват много различни функции,

но основната им функция е да извличат определени но основната им функция е да извличат определени данни от таблицитеданни от таблиците

Данните, които искате да видите, обикновено са Данните, които искате да видите, обикновено са разпръснати в няколко таблици и заявките Ви разпръснати в няколко таблици и заявките Ви позволяват да ги покажете в един единствен лист с позволяват да ги покажете в един единствен лист с данни. Освен това, тъй като обикновено не искате да данни. Освен това, тъй като обикновено не искате да видите всички записи наведнъж, заявките ви видите всички записи наведнъж, заявките ви позволяват да добавяте критерии, за да "филтрирате" позволяват да добавяте критерии, за да "филтрирате" данните само до желаните записиданните само до желаните записи

Заявките често служат като източник на записи за Заявките често служат като източник на записи за формулярите и отчетитеформулярите и отчетите

Някои заявки са "обновяеми", което означава, че можете Някои заявки са "обновяеми", което означава, че можете да редактирате данните в лежащите в основата им да редактирате данните в лежащите в основата им таблици чрез листа с данни на заявката, като имайте таблици чрез листа с данни на заявката, като имайте предвид, че вашите промени всъщност се извършват в предвид, че вашите промени всъщност се извършват в таблиците, а не само в листа с данни на заявкататаблиците, а не само в листа с данни на заявката

Page 29: 20090510 unicheats.net 520_6094

ЗаявкиЗаявкиЗаявките имат две основни разновидности:Заявките имат две основни разновидности: Заявки за селектиране - заявката за селектиране Заявки за селектиране - заявката за селектиране

само извлича данните и ги прави достъпни за само извлича данните и ги прави достъпни за използванеизползване

Резултатите от заявката могат да се разглеждат на Резултатите от заявката могат да се разглеждат на екрана, да се отпечатват и да се копират в екрана, да се отпечатват и да се копират в клипбордаклипборда

Можете също да използвате изхода от заявката като Можете също да използвате изхода от заявката като източник на записи за формуляр или отчет,източник на записи за формуляр или отчет,

Заявки за действия - заявката за действие Заявки за действия - заявката за действие извършва действия с даннитеизвършва действия с данните

Заявките за действия могат да се използват за Заявките за действия могат да се използват за създаване на нови таблици, за добавяне на данни създаване на нови таблици, за добавяне на данни в съществуващи таблици, за модифициране на в съществуващи таблици, за модифициране на данни или за изтриване на данни;данни или за изтриване на данни;

Page 30: 20090510 unicheats.net 520_6094

ЗаявкиЗаявки

Създаване на заявки (Queries):Създаване на заявки (Queries): Избира се таб Create и се натиска бутон Query Design,Избира се таб Create и се натиска бутон Query Design, Избира се първата таблица Клиенти и се натиска Избира се първата таблица Клиенти и се натиска

бутон Add, последователно се избират следващите бутон Add, последователно се избират следващите таблици и се добавят с Add, натиска се бутон Close,таблици и се добавят с Add, натиска се бутон Close,

От таблицата Клиенти, с двукратно натискане на От таблицата Клиенти, с двукратно натискане на Номер клиент, полето се прехвърля в полето Field, Номер клиент, полето се прехвърля в полето Field, аналогично се прехвърлят и останалите полета от аналогично се прехвърлят и останалите полета от съответните таблици, от които се създава заявката,съответните таблици, от които се създава заявката,

Натискат се бутоните Close, Yes, в полето Query Name Натискат се бутоните Close, Yes, в полето Query Name се въвежда име на заявката, натиска се бутон OK,се въвежда име на заявката, натиска се бутон OK,

Заявката се отваря с функцията Open от контекстното Заявката се отваря с функцията Open от контекстното меню на заявката;меню на заявката;

Page 31: 20090510 unicheats.net 520_6094

МакросиМакросиМакросите в Access може да се разглеждат като Макросите в Access може да се разглеждат като

опростен език за програмиране, който можете да опростен език за програмиране, който можете да използвате, за да добавяте функционалност към използвате, за да добавяте функционалност към вашата база даннивашата база данни

Например можете да прикачите макрос към бутон във Например можете да прикачите макрос към бутон във формуляр, така че макросът да се изпълнява формуляр, така че макросът да се изпълнява винаги, когато бутонът се натисневинаги, когато бутонът се натисне

Макросите съдържат действия, които изпълняват Макросите съдържат действия, които изпълняват определени задачи, например отваряне на отчет, определени задачи, например отваряне на отчет, изпълнение на заявка или затваряне на базата изпълнение на заявка или затваряне на базата данниданни

Повечето операции в базата данни, които извършвате Повечето операции в базата данни, които извършвате ръчно, могат да бъдат автоматизирани с помощта ръчно, могат да бъдат автоматизирани с помощта на макроси и това да ви позволи да спестите много на макроси и това да ви позволи да спестите много времевреме

Page 32: 20090510 unicheats.net 520_6094

МодулиМодулиМодулите, подобно на макросите, са обекти, които Модулите, подобно на макросите, са обекти, които

можете да използвате, за да добавите можете да използвате, за да добавите функционалност към вашата база даннифункционалност към вашата база данни

За разлика от създаването на макроси в Access чрез За разлика от създаването на макроси в Access чрез избиране от списък с макродействия, модулите се избиране от списък с макродействия, модулите се записват на езика за програмиране Visual Basic for записват на езика за програмиране Visual Basic for Applications (VBA)Applications (VBA)

Модулът е набор от декларации, команди и процедури, Модулът е набор от декларации, команди и процедури, които се съхраняват заедно като блок. Модулът може които се съхраняват заедно като блок. Модулът може да бъде или модул на клас, или стандартен модулда бъде или модул на клас, или стандартен модул

Модулите на класове се прикачват към формуляри или Модулите на класове се прикачват към формуляри или отчети и обикновено съдържат процедури, които са отчети и обикновено съдържат процедури, които са специфични за съответния формуляр или отчетспецифични за съответния формуляр или отчет

Стандартните модули съдържат общи процедури, които Стандартните модули съдържат общи процедури, които не са асоциирани с друг обект. Стандартните модули не са асоциирани с друг обект. Стандартните модули са изброени под Модули в навигационния екран, са изброени под Модули в навигационния екран, докато модулите на класове не садокато модулите на класове не са

Page 33: 20090510 unicheats.net 520_6094

РезюмеРезюме

Microsoft Access 2007 Microsoft Access 2007 е СУБД, която е СУБД, която

управлява база данни с релационен управлява база данни с релационен

модел на даннитемодел на данните

Включва елементите:Включва елементите:

Таблици, Формуляри, Заявки, Отчети, Таблици, Формуляри, Заявки, Отчети,

Макроси, Модули;Макроси, Модули;

Page 34: 20090510 unicheats.net 520_6094

ВъпросиВъпроси1.1. В колко файла се съхранява информацията за В колко файла се съхранява информацията за

елементите на една база данни на СУБДелементите на една база данни на СУБД Access Access??

2.2. KKаквоакво e e файловото разширение на файловото разширение на БД, създадени БД, създадени със СУБД Access?със СУБД Access?

3.3. Какви Какви операции можете да извършвате с помощта на операции можете да извършвате с помощта на СУБД AccessСУБД Access??

4.4. От какви елементи се състои всяка една БД, От какви елементи се състои всяка една БД, създадена със СУБД Access?създадена със СУБД Access?

5.5. От какъв тип са връзките между таблиците От какъв тип са връзките между таблиците "Доставчици" и "Продукти"?"Доставчици" и "Продукти"?

6.6. Какво трябва да направите, ако връзката между Какво трябва да направите, ако връзката между таблиците е от тип “много към много” (М:М)?таблиците е от тип “много към много” (М:М)?

Page 35: 20090510 unicheats.net 520_6094

ВъпросиВъпроси

9.9. Кога връзката между таблиците е от тип "един Кога връзката между таблиците е от тип "един към един“ (1:1)?към един“ (1:1)?

10.10. Какво е предназначението на формуляра?Какво е предназначението на формуляра?

11.11. Къде се извеждат отчетите?Къде се извеждат отчетите?

12.12. Какво е “обновяема” заявка?Какво е “обновяема” заявка?

13.13. Какви са основните два типа заявкиКакви са основните два типа заявки??

14.14. За какво се използва макроса?За какво се използва макроса?

15.15. За какво се използва модулаЗа какво се използва модула??

16.16. Какво е общото и различното между макрос и Какво е общото и различното между макрос и модул?модул?