Бази от данни Съдържание Необходимост от бази от данни Определение и характеристика



страница5/11
Дата12.05.2017
Размер1.04 Mb.
#21212
1   2   3   4   5   6   7   8   9   10   11


 

 



 

 

 



 

 

 



 

 

 



 

 

 



 

 

 



 

 

 



 

 

 



 

 

 



 

 

 



 

 

 



 

 

 



 

 

 



 

 

 



 

 

 



 

 

 



 

 

Фиг. 4.5.

 

- какъв тип данни ще се въвеждат в полето. Например, не може да се въвежда текст в поле, за което е посочено, че е от тип Number;



- какво количество памет ще използва Access за съхраняване на данните от това поле. Например, всяка стойност от тип Currency използва 8 bytes памет;

- какъв тип операции ще могат да се изпълняват със стойностите от това поле. Например, възможно е изпълнение на аритметични действия само с данни от тип Number или Currency, но не и с данни от тип Text;

- дали е възможно да се сортират или индексират данните от това поле. Например не може да се индексират Memo и OLE полета.

Както се вижда от Фиг. 4.5. в полето Data Type могат да бъдат посочени всеки един от типовете, представени в следващата таблица:

 

Тип

Описание

Byte

Цели числа в диапазона 0 до 255.

Integer

Цели числа в диапазона –32768 до +32767.

Long

Цели числа в диапазона -2147483648 до 2147483647.

Single


Числа в диапазона от -3.4? 1038 до 3.4? 1038.

Double

Числа в диапазона от -1.8? 10308 до 1.8? 10308

 

 

 


Setting

Description

Decimal precision

Storage size

Byte

Stores numbers from 0 to 255 (no fractions).

None

1 byte

Integer

Stores numbers from –32,768 to 32,767 (no fractions).

None

2 bytes

Long Integer

(Default) Stores numbers from –2,147,483,648 to 2,147,483,647 (no fractions).

None

4 bytes

Single

Stores numbers from –3.402823E38 to –1.401298E–45 for negative values and from 1.401298E–45 to 3.402823E38 for positive values.

7

4 bytes

Double

Stores numbers from –1.79769313486231E308 to –4.94065645841247E–324 for negative values and from 1.79769313486231E308 to 4.94065645841247E–324 for positive values.

15

8 bytes

Replication ID

Globally unique identifier (GUID) A 16-byte field used to establish a unique identifier for replication. GUIDs are used extensively to identify replicas, replica sets, tables, records, and other objects.

N/A

16 bytes


 

 



 

 

 



 

 

 



 

 

 



 

 

 



В последното поле от мрежата (Description) се въвежда по желание на потребителя, кратко описание за предназначението на полето. Това описание се извежда в status bar когато се въвеждат данни в таблицата в Datasheet view или в контрол, свързан с полето.
 


Редактиране структурата на таблицата


 

Подреждане на полетата на таблицата

Ако таблицата на която ще се променя последователността на полетата не е отворена в режим Design, то това се постига с избиране на името на таблицата в прозорец Database (Фиг. 3.2.), след което се натиска бутон Design от същият прозорец.

Избира се полето подлежащо на преместване в съществуващата структура (веднъж се чуква върху селектора, след това повторно се чуква и задържа левия клавиш за да се разпознае следващото действие), след което се провлачва на ново място (вж. Фиг. 4.6. за преместване на полето Ime между полетата Grad и Bdate).

Фиг. 4.6.

 

Изтриване на ненужно поле от таблицата

За изтриване на ненужно поле от структурата на таблицата е необходимо то да бъде избрано, след което се натиска клавиш D или от контекстното меню се избира Delete Rows или се изпълнява команда Edit | Delete Rows.

 

Добавяне на ново поле като последно в таблицата

За целта се посочва с показалеца на мишката и се щраква в празният ред след последното съществуващо поле от структурата на таблицата. След това се задава име и тип за новото поле.

 

Добавяне на едно ново поле между съществуващи полета

Избира се полето преди което ще е новото поле чрез селектора на полето или с просто преместване на мигащият маркер в него. Изпълнява се команда Insert | Rows, или от контекстното меню Insert Rows или просто се натиска клавиш I.

 

Добавяне на няколко нови полета между съществуващите полета

Избират (маркират) се толкова полета от съществуващата структура, колкото е необходимо да бъдат добавени, като при това първо сред избраните трябва да е полето, преди което ще се вмъкнат новите полета. Изпълнява се команда Insert | Rows или просто се натиска клавиш I.



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

 

Задаване на първичен ключ за таблица

Необходимо е винаги в една таблица да се създава първичен ключ, тъй като това дава следните предимства:

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

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

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

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

Забележка: Когато се прави опит за запис на новосъздадена таблица, за която не е дефиниран първичен ключ, Access отправя към потребителя запитване за създаване на такъв ключ. Ако потребителят избере Yes, Access създава ID поле, използващо AutoNumber тип за съхраняване на уникална стойност за всеки запис. Ако записваната таблица вече има AutoNumber поле, Access използва това поле за първичен ключ.

За задаване на първичен ключ трябва да се изпълни следното:

Чуква се в полето, което трябва да се използва като първичен ключ. За създаването на първичен ключ на базата на няколко полета, трябва да се натисне и задържи натиснат клавиш C, а след това да се чуква върху селектора на полето за всяко от полетата.

От контекстното меню се избира Primary Key, или се натиска бутон Primary Key от лентата с бутони Standard или се изпълнява Edit | Primary Key.

Access добавя индикатор за първичен ключ в ляво от полето или полетата, за които той е създаден (вж. Фиг. 4.6. в която полето Fn е определено като първичен ключ и съответната за това индикация е в ляво на името на полето).

Редактирането или отстраняването на първичен ключ ще бъде разгледано по-късно – при Indexes window.

 



Съхраняване на таблица


 

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

Когато се съхранява таблица, редно е тя да получи “говорящо” име, описващо информацията, която съдържа. Името може да съдържа до 64 символа, букви и цифри, включително и интервали.

За съхраняване и именуване на таблица се прави следното:

Изпълнява се File | Save.

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

 



Показване (отваряне) на таблица в Datasheet


 

Когато се желае въвеждане, редактиране и изтриване на записи в таблица, една от възможностите е това да се извършва в Datasheet view.

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

Ако е правена промяна в структурата на таблицата, но не е затворена, то преминаването в този режим може да стане с изпълнението на командата View | Design View, като при това, ако променената структура не е записана, Access първо ще поиска да се потвърди съхранението на таблицата и след това ще я отвори в Datasheet view.

След като таблицата се отвори в Datasheet view, то в нея могат да се въвеждат записи. В този режим таблицата се извежда в табличен (row and column) формат (вж. Фиг. 4.7.).

 

Фиг. 4.7.

 



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


 

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

Същност на връзките (relationships)[1]

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



Създаване на връзка

Процеса на създаване на връзка между таблиците протича в следната последователност:

Изпълнява се Tools | Relationships (или ако е отворен върху екрана прозорец Database, се натиска бутон Relationships от лентата с бутони Standard. Това води до отварянето на прозорец Show table (вж. Фиг. 4.8.).

 

Фиг. 4.8.

 

Забележка: Ако вече са създавани връзки с конкретната база от данни, то вместо диалоговия прозорец Show Table се отваря директно прозорец Relationships. В такъв случай за да се отвори диалоговият прозорец Show Table от прозорец Relationships, се изпълнява Relationships | Show Table.

Списъкът включва таблиците от базата с данни, между които могат да се установяват връзки (вижда се, че връзки могат да се установяват както между таблици, така и между запитвания, така и между таблици и запитвания). Избира се името на таблица, която трябва да се включи в прозорец Relationships и се натиска бутон Add. За нашия пример ще включим по този начин таблиците Stud и EmailAdr (възможно е това да стане и с двукратно щракване върху името на таблицата, без да се ползва бутон Add). След като се включат нужните таблици в прозорец Relationships се натиска бутон Close. В прозорец Relationships са включени двете таблици (вж. Фиг. 4.9).

 

Фиг. 4.9.

 

В прозореца Relationships има два списъка с полета (принадлежащи на таблиците Stud и EmailAdr). Първичният ключ е с чер шрифт.



За да се установи връзка между двете таблици, натиска се и се задържа бутона на мишката върху полето Fn от списъка Stud. Изтегля се това поле точно върху едноименното поле от списъка EmailAdr. Бутона на мишката се отпуска, когато се вижда малкия правоъгълник, указващ, че полето е позиционирано точно върху другото. В резултат на това се отваря диалоговият прозорец Relationships (вж. Фиг. 4.10).

 

Фиг. 4.10.

 

Този диалогов прозорец дава подробности за връзката, която може да се установи, както и някои възможности за избор. В лявата колона е таблицата от което е изтегленото поле (първичната таблица). В дясната колона е таблицата, в която е “пуснато” полето (свързаната таблица). Под имената на таблиците се виждат имената на полетата, на базата на които се осъществява връзката (трябва да се прави разлика между прозорец Relationships – Фиг. 4.9. и диалогов прозорец Relationships – Фиг. 4.10).



В долната част на диалоговия прозорец е показан вида на връзката (за нашия случай One-To-One). Сега няма да използваме другите опции, а е достатъчно да се натисне бутон Create. В резултат на това се появява линия между двата списъка, свързваща двете полета Fn (вж. Фиг. 4.11.).

 

Фиг. 4.11.

 

Прекратяване на връзка

Създадените веднъж между таблиците връзки могат да бъдат отменяни. За целта, ако не е активен прозорец Relationships, то той се актимизира (например чрез Tools | Relationships). Избира се линията, изобразяваща връзката, която ще се отмени, след което се натиска D или се изпълнява Edit | Delete. На запитването на Access наистина ли се отменя съществуващата връзка се отговаря с бутон Yes.

[1]  За същността на връзките (отношенията) между таблиците, както и за видовете връзки – вж. Глава 2 – Въведение в базите данни на Access, т. 2 – Отношения между таблиците.

 



Цялостност при адресиране (Referential Integrity)


 

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

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

Когато между таблиците Stud и EmailArd се установи цялост по адресиране, то:

В таблицата EmailAdr (зависимата таблица) не може да се добави запис за студент, за който не съществува запис в таблицата Stud.

От таблицата Stud не може да се изтрие запис, за който в таблицата EmailAdr има запис.

 

Прилагане на цялост при адресиране

В прозореца Relationships трябва да се чукне двукратно върху линията, свързваща списъците на двете таблици (вж. Фиг. 4.11.), за да се активизира диалоговият прозорец Relationships (вж. Фиг. 4.12.).

Активизира се опцията Enforce Referential Integrity, чрез чукване в квадратчето за поставяне на отметка в него.

Натиска се бутон Create.

Отново става активен прозорец Relationships в който връзката между таблиците е представена по друг начин (вж. Фиг. 4.12.). Така се представя връзка един-към-един, в случаите когато е зададена цялост при адресиране, а за другите типове връзки и графичното им представяне вж. Фиг. 3.6.

 

Фиг. 4.12.

 

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



Ако се погледне във Фиг. 4.10., се вижда, че когато е активизирана опцията Enforce Referential Integrity, има възможност да се избира между две допълнителните опции, служещи за указване на заобикаляне на правилата за цялост при адресиране. Това са каскадно обновяване (Cascade Update Related Fields) и каскадно изтриване (Cascade Delete Related Records).

 

Каскадно обновяване

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

Ако не е активирана опцията за каскадно обновяване, то Access ще отхвърли промяната и ще изведе съобщение, че се нарушават правилата на цялостта при адресиране. Това е така, защото се прави опит за промяна на ключово поле от Stud, за което е зададена цялост при адресиране.

Ако е активирана опцията за каскадно обновяване, тогава може да се промени факултетния номер на студент от таблицата Stud, и което е по важно – Access автоматично ще отрази тази промяна и в таблицата EmailAdr.

 

Каскадно изтриване

Ако опцията за каскадно изтриване е активирана, то изтриването на един запис от таблицата Stud ще доведе до автоматичното изтриване свързаната с този запис информация от таблицата EmailAdr, т.е. Access се грижи за поддържането на актуалността на базата от данни на основата на цялостност при адресиране.

 
5.




Каталог: wp-content -> uploads -> 2011
2011 -> Евгений Гиндев световната конспирация
2011 -> Наредба №36 от 30 ноември 2005 Г. За изискванията към козметичните продукти
2011 -> Наредба №36 от 30 ноември 2005 Г. За изискванията към козметичните продукти
2011 -> За минималния и максималния бал по паралелки в рио област софия-град
2011 -> 130 годишнината на ввму “Н. Й. Вапцаров” разкрива новите предизвикателства и перспективи в развитието на флагмана на морското образование
2011 -> Съюз на математиците в българия – секция бургас пробен изпит по математика за 7 клас – март, 2011
2011 -> Член на Приятели на Земята Интернешънъл
2011 -> Права и задължения на учениците
2011 -> В съответствие с ангажиментите в рамките на фаза 1 от мониторинга за изпълнение на задълженията по Конвенцията и Препоръката, през 2000 г
2011 -> Разграничение на трафика на хора от сродни престъпни дейности д-р Ива Пушкарова


Сподели с приятели:
1   2   3   4   5   6   7   8   9   10   11




©obuch.info 2024
отнасят до администрацията

    Начална страница