Запис в основната таблица. Структура на пакета на Windows Installer

Базата данни (DB) е организирана структура за съхранение на информация. Обикновено базите данни се представят като набор от взаимосвързани файлове или таблици, предназначени за решаване на конкретен проблем.

Тясно свързана с концепцията за база данни е концепцията системи за управление на бази данни(СУБД). СУБД е набор от софтуерни инструменти, предназначени да създават структурата на нова база данни, да я запълват със съдържание, да редактират съдържание и да визуализират информация.

DBMS Access е част от Microsoft Office и е предназначена за работа релационни бази данни, т.е. представени в табличен вид. За разлика от Excel за електронни таблици, Access има по-разширени инструменти за избор на данни от свързани таблици, създаване на нови таблици и отчети.

Характерна особеност на базите данни, създадени в Access, е съхранението на създадени таблици и инструменти за обработка на данни в един файл с разширение .mdb. Предимството на Access е възможността за създаване на СУБД (т.е. контролна програма) без програмиране. Въпреки това, за сложни СУБД, използването на програмиране във вградения език на Visual Basic за приложения (VBA) прави възможно повишаването на ефективността на системата за управление.

Основният елемент на базата данни е таблицата. Колоните на таблицата на база данни се наричат ​​полета, а редовете се наричат ​​записи. Първата стъпка в създаването на таблица на база данни е да зададете нейната структура, т.е. определяне на броя и вида на полетата. Втората стъпка е да въведете и редактирате записи в таблицата. Базата данни се счита за създадена, дори ако е празна.

Полетата на таблицата просто дефинират нейната структура и груповите свойства на данните, записани в клетките. Помислете за основните свойства на полетата в базата данни.

  1. Име на полето - определя как трябва да се осъществява достъп до данните на полето (имена се използват като заглавки на таблицата).
  2. Тип поле – определя типа данни, които могат да се съдържат в това поле (текст, число, дата, бележка, валута, брояч и т.н.).
  3. Размер на полето – определя максималната дължина на данните, които могат да бъдат поставени в полето.
  4. Форматът на полето е начин за форматиране на данни в клетки.

Видове таблици и ключове в релационни бази данни

Релационните бази данни се характеризират с наличието на определени типове таблици и ключове за дефиниране на връзки между таблиците. За да се разберат принципите на проектиране на релационни бази данни, е необходимо да се дефинират различните типове релационни ключове и таблици:

  • Основна маса. В релационна база данни базовата таблица е таблица, която включва една или повече колони за свойства на обект и съдържа първичен ключ, който уникално идентифицира този обект. Освен това основната таблица трябва да съдържа първичен ключ. Основните таблици често се наричат ​​​​първични, защото имат първичен ключ.
  • междинна маса. Таблица, която не е основна таблица (защото не комбинира свойства на обекта или не съдържа поле на първичен ключ), която се използва за осигуряване на връзки между други таблици, се нарича таблица на връзките. Ключовите полета в таблиците за връзки трябва да бъдат външни ключовесвързани с първичните ключове на основната таблица. Най-просто казано, таблицата за връзки се състои само от външни ключове и не съдържа независими елементи от данни.
  • първичен ключ. Първичният ключ се състои от набор от стойности, които уникално идентифицират запис в основната таблица. Всяка стойност на първичен ключ трябва да съответства на един и само един ред в таблицата. Първичният ключ включва едно поле само ако това поле не съдържа дублиращи се стойности.
  • Композитни ключове. Ако, за да изпълни условията, наложени върху стойностите на първичния ключ, даденият ключ включва няколко полета от таблицата, тогава той се нарича композитен.
  • външни ключове. Външен ключ е колона, чиито стойности съответстват на стойностите на първичния ключ на друга свързана таблица.

Управление на средата на MS Access

След стартиране на Access, на екрана се показва прозорец на база данни със списък с обекти. Основни обекти: таблици, заявки, формуляри, отчети, макроси, модули. Можете да работите с тези обекти в два режима: конструктор и възпроизвеждане. Фигурата показва прозореца на базата данни за академични резултати, който съдържа четири таблици.

Основните обекти на прозореца на БД имат следното предназначение:

  • таблица - основното средство за съхранение на информация в базата данни;
  • заявката е инструмент за извличане на необходимата информация от изходните таблици и представянето й в удобна форма;
  • формата е основното средство за въвеждане на данни, управление на СУБД и извеждане на резултатите на екрана на монитора;
  • отчетът е специален инструмент за генериране на изходни документи и извеждането им на принтер;
  • макросите в Access са набор от вътрешни команди, предназначени да автоматизират работата с базата данни;
  • Модулите са програми, създадени с помощта на езика VBA и са подобни на макросите в Word и Excel.

Таблиците и заявките са свързани заедно с помощта на схема за данни.

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

Технологията за разработка на СУБД включва няколко етапа, основните от които са:

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

Горната последователност от стъпки не е твърда. Обикновено разработчикът на СУБД трябва да се връща към същите етапи много пъти, като постепенно усъвършенства проекта.

тестови въпроси

  1. Какво е база данни (DB)? Как са представени базите данни?
  2. Какво е система за управление на база данни (СУБД)?
  3. Какво е СУБД на Access? Как се различава от електронната таблица на Excel?
  4. Кои бази данни се наричат ​​релационни?
  5. Как СУБД на Access съхранява създадените таблици и инструменти за обработка на данни?
  6. Кои са основните елементи на базата данни?
  7. Каква е първата стъпка при създаването на таблица с база данни? Втора фаза?
  8. Какво представляват полетата на таблицата?
  9. Какви са основните свойства на полетата?
  10. Избройте типовете таблици и ключове в релационни бази данни?
  11. Каква е основната маса?
  12. Кои таблици се наричат ​​междинни?
  13. Какво е първичен ключ?
  14. Кога се използва композитен ключ?
  15. Какво е външен ключ?
  16. Кои са основните обекти на прозореца на базата данни, който се появява след зареждане на Access? Каква е целта им?
  17. Как можете да създавате таблици, заявки, формуляри и отчети?
  18. Какви етапи включва технологията за разработка на СУБД?

База данни

Всеки от нас, започвайки от ранно детство, многократно се е сблъсквал с "бази данни". Това са всякакви справочници (например телефонен), енциклопедии и т. н. Тетрадката е и „база данни“, с която разполага всеки от нас.

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

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

Информацията в базите данни се съхранява в подредена форма. Така че в тетрадката всички записи са сортирани по азбучен ред, а в библиотечен каталог - или по азбучен ред (азбучен каталог), или по област на знания (предметен каталог).

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

Има няколко различни структури на информационния модел и съответно различни видове бази данни: табличен, йерархиченИ мрежа.

Таблични бази данни

Табличната база данни съдържа списък с обекти от един и същи тип, тоест обекти, които имат същия набор от свойства. Удобно е да се представи такава база данни като двуизмерна таблица: във всеки ред стойностите на свойствата на един от обектите се поставят последователно; всяка стойност на свойството е в собствена колона, оглавена от името на свойството.

Колоните на такава таблица се наричат полета; всяко поле се характеризира със своето име (името на съответното свойство) и типа данни, представляващи стойностите на това свойство.

Поле база данние колона на таблицата, съдържаща стойностите на определено свойство.

Редовете на таблицата са записиза обекта; тези записи са разбити на полета от колоните на таблицата, така че всеки запис е набор от стойности, съдържащи се в полетата.

Въвеждане в база данние ред на таблица, съдържащ набор от стойности на свойства, поставени в полета на базата данни.

Всяка таблица трябва да съдържа поне една ключово поле, чието съдържание е уникално за всеки запис в тази таблица. Ключовото поле ви позволява уникално да идентифицирате всеки запис в таблицата.

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

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

Типът на полето се определя от типа данни, които съдържа. Полетата могат да съдържат данни от следните основни типове:

  • брояч- цели числа, които се задават автоматично при въвеждане на записи. Тези номера не могат да бъдат променяни от потребителя;
  • текст- текстове, съдържащи до 255 знака;
  • числени- числа;
  • Време за среща- дата или час;
  • парична- числа в паричен формат;
  • логично- стойности Вярно(Да или лъжа(Не);
  • хипервръзка- връзки към информационен ресурс в Интернет (например уеб сайт).

Всеки тип поле има свой собствен набор от свойства. Най-важните свойства на полетата са:

  • размер на полето- определя максималната дължина на текстово или числово поле;
  • формат на полето- задава формата на данните;
  • Задължително поле- показва, че това поле трябва да бъде попълнено.

Помислете например за базата данни "Компютър", която съдържа списък с обекти (компютри), всеки от които има име (име). Като характеристики (свойства) можете да разгледате вида на инсталирания процесор и количеството RAM памет. полета имеИ Тип процесорса текст, RAM- числово и полето № п / стр- брояч (Таблица 3.1).

Всяко поле има определен набор от свойства. Например за полето RAMформатът на данните е зададен цяло число.

Таблица 3.1. Таблична база данни
№ п / стр име Тип процесор RAM (MB)
1 Compaq Celeron 64
2 Dell Pentium III 128
3 IBM Pentium 4 256

Въпроси за размисъл

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

2. Полета от какви типове полета могат да присъстват в базата данни?

3. По какво се различава ключовото поле от другите полета?

Вече видяхме, че от даден набор от таблици, като DEPT и EMP, релационни изрази могат да се използват за получаване на много други, например чрез свързване на две таблици. Време е да въведем още няколко нови термина. Извикват се таблиците с източник (данни). основенмаси; и таблиците, получени от тях чрез изпълнение на някои релационни изрази, се извикват дериватимаси. И така, основните таблици съществуват самостоятелно.докато извлечените таблици зависят от базовите таблици. Следователно, за да бъдем по-точни, производната таблица е тази, която е дефинирана по отношение на други таблици и в крайна сметка по отношение на базовите таблици, а основната таблица е тази, която не е производна таблица.

Релационните системи очевидно трябва да осигурят средства за създаване на базови таблици на първо място. В SQL, например, тази функция се изпълнява от израза CREATE TABLE (тук TABLE се използва в тесен смисъл, т.к. основентаблица). Основните таблици, разбира се, трябва да бъдат на име(т.е. имената им са посочени в инструкциите за създаване). Повечето производни таблици, от друга страна, са безименни. Въпреки това, релационните системи обикновено поддържат един конкретен вид възглед, наречен производителност,която има име. По този начин, представителствое таблица с име, която за разлика от базова таблица не може да съществува сама по себе си, а е дефинирана в термините на една или повече именувани таблици (базови таблици или други изгледи).

Например инструкцията

СЪЗДАЙТЕ ИЗГЛЕЖДАНЕ НА TOPEMPS КАТО (EMP КЪДЕ ЗАПЛАТА > 33K) [ EMP#, ENAME, ЗАПЛАТА ] ;

може да се използва за дефиниране на изглед TOPEMPS. Когато тази инструкция се изпълни, изразът, следващ ключовата дума as, която всъщност дефинира изгледа, не се оценява, а просто се „запомня“ от системата (обикновено като се съхранява в директория под посоченото име TOPEMPS). Въпреки това за потребителя това вече е същата реална таблица на база данни с име TOPEMPS, с редове и колони, както е показано на фигура 2. 3.5, но само в незасенчени зони. С други думи, името TOPEMPS означава виртуаленмаса, т.е. таблицата, която би била резултатът, ако изразът за изглед действително беше оценен.

Ориз. 3.5. TOPEMPS като представяне на основната таблица EMP (незащриховани области)

Въпреки това, бъдете внимателни: като отбелязваме, че името TOPEMPS означава „таблицата, която би била резултатът, ако изразът, определящ изгледа, действително беше оценен“, ние не искаме да кажем, че се отнася до отделно копие на данните, т.е. ние не означаваме, че изразът, който дефинира изгледа, всъщност се оценява. Напротив, представителството е просто "прозорец"в основната таблица на EMP. Освен това е естествено, че всички промени в основната таблица ще бъдат автоматично и незабавно видими през такъв "прозорец" (разбира се, ако тези промени се отнасят до незащрихованата част на таблицата EMP); по същия начин промените в TOPEMPS ще бъдат автоматично и незабавно приложени към реалната EMP таблица и следователно ще се виждат през "прозореца".

Следва примерна заявка, използваща изгледа TOPEMPS:

(TOPEMPS КЪДЕ ЗАПЛАТА< 42K) [ ЕМР#, SALARY ]

Резултатът ще изглежда подобно на следното:

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

(TOPEMPS КЪДЕ ЗАПЛАТА< 42K) [ ЕМР#, SALARY ]

модифицирани от системата във формата

(((EMP КЪДЕ ЗАПЛАТА > 33K) [ EMP#, ENAME, ЗАПЛАТА ])

КЪДЕ ЗАПЛАТА< 42K) [ EMP#, SALARY ]

След определен брой пренареждания този израз се опростява и приема следната форма:

(EMP КЪДЕ ЗАПЛАТА > ZZK И ЗАПЛАТА< 42К) [ ЕМР#, SALARY ]

И оценката на този израз води до резултата, показан по-рано. С други думи, оригиналната операция върху изгледа на практика се преобразува в еквивалентна операция върху съответната основна таблица. Тогава такава еквивалентна операция се извършва по обичайния начин (по-точно, оптимизиран инаправено по обичайния начин).

Сега TOPEMPS е много прост изглед, състоящ се както обикновено от подмножество от редове и колони на основната базова таблица. По принцип обаче дефиницията на изглед може да бъде произволна сложност.Например, ето изглед, чиято дефиниция включва свързване на две основни базови таблици:

СЪЗДАВАНЕ НА ИЗГЛЕД JOINEXl КАТО (( EMP JOIN DEPT) КЪДЕТО БЮДЖЕТ > 7M) [ EMP#, DEPT#] ;

Ще се върнем към общия въпрос за дефинирането и обработката на изгледи в глава 17.

Между другото, сега е възможно да се обясни забележката в глава 2, че терминът "изглед" има доста специфично значение в релационен контекст, а не същото като значението, приписано му в архитектурата ANSI/SPARC. На външното ниво на тази архитектура базата данни се третира като "външен изглед", дефиниран от външната схема (и различните потребители може да имат различни външни изгледи). В релационните системи, за разлика от това, възгледът, както беше обяснено по-горе, е специфичен наречена извлечена виртуална таблица.Следователно релационният аналог на ANSI/SPARC „външния изглед” обикновено е набор от няколко таблици, всяка от които е изглед в релационен смисъл. „Външната схема“ се състои от дефинициите на такива възгледи.

Архитектурата ANSI/SPARC е доста обща и позволява произволни промени между външния и концептуалния слой. По принцип, дори видовеПоддържаните на двете нива структури от данни могат да бъдат различни: например концептуалното ниво може да се основава на връзки, докато потребителят може да има външно представяне на базата данни като йерархия. На практика обаче повечето системи използват едни и същи типове структури като бази и на двете нива и релационните продукти не са изключение от това общо правило – изгледът все още е таблица, точно като основна таблица. И тъй като едни и същи типове обекти се поддържат и на двете нива, един и същ подезик на данните (обикновено SQL) се използва и на двете нива. Всъщност фактът, че представителството е същотаблицата е толкова важна за релационните системи, колкото фактът, че подмножеството е също множество, е важен за математиката.

Коментирайте.Въпреки това, SQL продуктите и SQL стандартът изглежда често пренебрегват тази точка, тъй като не е необичайно да се позовават на "таблици и изгледи" (в смисъл, че изгледът не е таблица). Ние съветваме ненаправете тази често срещана грешка и използвайте термина "таблици" само за основенмаси.

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

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

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

Въпреки това, такава характеристика, въпреки че е малко вероятно да има смисъл в неформален смисъл, не отразява точно истинското състояние на нещата. Вярно е, че потребителите могат Изпращанетаблици като физически съществуващи; наистина, крайната цел на релационния подход е да позволи на потребителите да виждат основните таблици, сякаш те съществуват физически, без да се притесняват как тези таблици са физически представени в паметта. Но (и това е много значимо "но"!) - такива разсъждения забранено етълкуват, че основната таблица е физически съхранена таблица (т.е. набор от физически последователни, физически съхранени записи, всеки от които се състои от директно копие на ред на основна таблица). Както беше обяснено по-горе, базовите таблици са най-добре представени като абстракциянякакъв набор от съхранени данни, в който всички детайли на слоя за съхранение са скрити. По принцип основната таблица и нейният съхранен аналог могат да се различават в различна степен.

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

Пример. Необходимо е да се създаде заявка за актуализация, след което в таблицата СЛУЖИТЕЛИ заплатите на служителите, наети преди 01.01.2000 г., ще бъдат увеличени с 20%.

Когато попълвате формуляра за заявка, включете полетата в него ЗаплатаИ Дата на назначаванеот таблицата СЛУЖИТЕЛИ.

За полето Заплатав редица Актуализациявъведете правилото за актуализиране: [Заплата] * 1.2

За полето Дата на назначаванев редица Условие за изборвъведете условието: < 01.01.2000 (фиг. 44).

В резултат на изпълнението на тази заявка в таблицата EMPLOYEES стойностите в полето Заплатав онези записи в таблицата, за които стойността в полето Дата на назначаванепо-малко от 01.01.2000 г.

Ориз. 44. Създаване на заявка за актуализиране на записите на базовите таблици.

Заявка за създаване на таблицасъздава нов основна маса(имената на основните таблици са изброени в раздела масив прозореца на базата данни) въз основа на всички или част от данните от една или повече таблици. Заявката за създаване на таблица е полезна за извършване на следното:

    Създайте таблица за експортиране в друга база данни на Microsoft Access. Например, искате да създадете таблица, съдържаща няколко полета от таблицата EMPLOYEES и след това да експортирате тази таблица в база данни, използвана от отдела за човешки ресурси.

    Създайте резервно копие на таблица.

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

Създаване на заявка за създаване на нова таблица


Пример. Необходимо е да се създаде заявка за създаване на нова базова таблица EMPLOYEE_ADDRESSES, която трябва да съдържа полетата Фамилия,име,презимеот таблица СЛУЖИТЕЛИ и полета Адресът,Телефонот таблицата ЛИЧНИ ДАННИ.

При попълване на формуляра за заявка включваме в него задължителните полета от таблиците СЛУЖИТЕЛИ и ЛИЧНИ ДАННИ (фиг. 45). Натискане на бутон Тип заявка, избирам Създайте таблицаи въведете в диалоговия прозорец името на новата таблица EMPLOYEE_ADDRESSES.

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

Ориз. 45. Създаване на заявка за създаване на нова базова таблица.

Дял