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


Промяна на данните с актуализиращи запитвания



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

Промяна на данните с актуализиращи запитвания

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



1. Общо описание на актуализиращите запитвания

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



Make-table query – за създаване на нова таблица от една или няколко таблици.

Delete query – за изтриване на записи от таблица или таблици.

Append query – за добавяне на група записи от една или няколко таблици в друга таблица или таблици

Update query – за промяна на данните в група записи.

 

Когато се създава запитване Access създава селектиращо запитване, ако изрично не се поиска създаване на друг вид. За до се подпомогне потребителят, то в прозорец Database, подпрозорец Query отделните видове запитвания се придружават от различни икони. На Фиг. 8.1. са представени иконите на възможните видове запитвания в Access, заедно с имената им (nomer1, nomer2,…), като са посочени и наименованията на съответните запитвания..





Препоръка: преди да се изпълняват актуализиращи запитвания е препоръчително да се създават резервни копия на базата от данни.

 

2. Създаване на нови таблици

Посредством make-table query се създава нова таблица, като в нея се включват записите или части от записите от изходната таблица (таблици). Този вид запитване се ползва най-често при: създаване на отчет, ползващ данни към определен период от време; създаване на резервно копие на таблица; създаване на таблица съдържаща стари записи (history table); разработване на варианти на форми и отчети базирани на многотаблични запитвания и др.

За създаване на make-table запитване, трябва да се изпълнят следните действия:

1. Създава се запитване, което включва таблиците или запитванията съдържащи полетата, които трябва да участват в новата таблица. При това Access стандартно си извежда Select Query прозореца.

2. Изпълнява се команда Query | Make Table или чрез бутон Query Type от лентата Standard се избира Make Table query, което води до отварянето на прозорец Make Table (вж. Фиг. 8.2.).



3. В Make Table прозореца в Table Name се въвежда ново име за таблицата, която ще се създава чрез запитването. Ако новата таблица трябва да замести съдържаща се в базата от данни таблица, то се чуква върху бутона отдясно на полето Table Name за да се отвори списък с имената на съдържащите се в базата от данни таблици и се избира едно от тях.

4. Посочва се дали таблицата ще е в текущата база от данни (чрез опцията Current Database) или в друга база от данни (чрез избор на опцията Another database). Във вторият случай трябва да се посочи името на базата от данни (и евентуално пълният път за достъп до нея) в полето File Name. Затваря се прозорецът с ОК.

Access променя заглавието на прозореца на “Make Table Query”.

5. Задават се полетата, които трябва да участват в запитването, определят се критериите на запитването.

Следващите две стъпки не са задължителни, но се препоръчват настоятелно.

6. Избира се Datasheet от View командата, за да се видят записите, които запитването ще включи в новата таблица.

7. Ако записите за новата таблица се формират коректно, то се превключва в режим Design View и се продължава с изпълнението на следващото действие. Ако обаче записите, които се формират не са тези които се е очаквало да бъдат, то процеса продължава с изпълнение на действие 5.

8. За изпълнението на запитването се изпълнява командата Query | Run или се натиска бутон Run от лентата с инструменти Standard.

Access извежда информационно съобщение колко записа ще съдържа новата таблица.

9. За приключване работата със запитването се натиска бутон Yes.

След изпълнението на Make Table Query трябва да се отвори новата таблица в Design View и да се направят промени в нея (от типа на първичен ключ и други характеристики), ако това е необходимо за по-нататъшната работа.

 

3. Изтриване на записи от таблица

Изтриването на определено количество записи от таблица, които удовлетворяват някакво условие се постига най-лесно чрез т.нар. Delete query. Чрез запитване от този вид, се отстраняват цели записи.

Обикновено се отстраняват записи само от една таблица. Когато в таблиците съществуват дефинирани правила за цялостност има известни особености при ползването на този вид запитвания.

За създаването на запитване за изтриване на записи от таблица, трябва да се изпълни следната последователност от действия:

1. Създава се запитване, което включва таблицата от която ще се изтриват записи. Access стандартно отваря Select Query прозореца.

2. Изпълнява се команда Query | Make Table или чрез бутон Query Type от лентата Standard се избира Delete query при което Access променя заглавието в прозореца на “Delete query”.

3. В QBE мрежата се включват:

Звездичката (*) за таблицата от която ще се изтриват записи. В резултат на това се появява “From” в клетката Delete под тази клетка.

Полето (или полетата), което ще се ползват като критерий за изтриване на записите от таблицата. Появява се “Where” в Delete клетката под полетата, които са избрани.

4. Задават се критерии, ако това е необходимо (вж. Фиг. 8.3.).



Следващите две стъпки са препоръчителни.

5. Избира се Datasheet от View командата, за да се видят записите, които запитването ще изтрие от таблицата.

6. Ако записите подлежащи на изтриване са избрани коректно, то се превключва в режим Design View и се продължава с изпълнението на следващото действие. Ако обаче записите, които са изведени не са тези които се е очаквало да бъдат, то процеса продължава с изпълнение на действие 4.

7. За изпълнението на запитването се изпълнява командата Query | Run или се натиска бутон Run от лентата с инструменти Standard.

Access извежда информационно съобщение колко записа ще бъдат изтрити от таблицата.

8. За приключване работата със запитването се натиска бутон Yes.

 

4. Добавяне на записи в таблица

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

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

Възможно е да се добавят записи от дори и когато някои от полетата не съществуват в другата таблица. Например, нека таблицата към която ще се добавят записи има 10 полета, а таблицата от която ще се вземат записите за добавяне в първата – 8 полета. Запитването ще добави 8 от полетата на втората таблица, а останалите 2 в приемащата таблица ще остави празни.

За нашият пример съществуват две таблици – Stud и Stud1. Таблицата Stud1 е създадена чрез копиране от таблицата Stud преди изпълнението на запитването за изтриване на записи от предходната точка на тази глава, т.е. в таблицата Stud липсват записи за студентите от Свищов (тъй като бяха изтрити чрез Delete query), а в останалите си 13 записи те са идентични.

В пример ще бъде демонстрирано как чрез append запитване записите за студентите от Свищов ще въдат прехвърлени от таблицата Stud1 в таблицата Stud.

За създаването на запитване за добавяне на записи в таблица, трябва да се изпълни следната последователност от действия:

1. Създава се запитване, което включва таблицата от която ще се вмъкват записи (от която ще се четат записите). Access стандартно отваря Select Query прозореца.

2. Изпълнява се команда Query | Append query или чрез бутон Query Type от лентата Standard се избира Append query при което Access отваря прозорец Append (вж. Фиг. 8.4.).

В полето Table Name се въвежда името на таблицата (в нашия случай Stud) в която ще се добавят записи. Може да се избере чрез опцията Current Database дали таблицата е в същата база от данни или в друга (чрез Another Database) заедно с посочване на File Name. След това прозорецът се затваря с бутон ОК, при което активен става прозорец Query (вж. Фиг. 8.5.)



3. В QBE мрежата се включват според нуждите:

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

Полетата, които ще се ползват като критерии.

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

За нашият пример попълването на QBE мрежата е представено на Фиг. 8.6.





Следващите две стъпки не са задължителни, но се препоръчват настоятелно.

4. Избира се Datasheet от View командата, за да се видят записите, които запитването ще добави от едната в другата таблица.

5. Ако записите за добавяне се формират коректно, то се превключва в режим Design View и се продължава с изпълнението на следващото действие. Ако обаче записите, които ще се добявят не са тези които се е очаквало да бъдат, то процеса продължава с действие 3.

6. За изпълнението на запитването се изпълнява командата Query | Run или се натиска бутон Run от лентата с инструменти Standard.

Access извежда информационно съобщение колко записа ще добави в таблицата.

7. За приключване работата със запитването се натиска бутон Yes.

 

5. Промяна на записите от таблица

Посредством Update запитване е възможно да се променяг данните в съществуващите таблици. Чрез този вид запитване актуализациите се извършват много по-бързо, отколкото по други начини.

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

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

2. Изпълнява се команда Query | Update Query или чрез бутон Query Type от лентата Standard се избира Update query при което Access променя заглавието в прозореца на “Update query”.

3. В мрежата се включват тези полета които подлежат на промяна и тези, които ще се ползват за задаване на критерии в QBE мрежата.

4. В полето подлежащо на промяна (в нашия пример St) в клетката Update To се въвежда израза или стойността, която ще се ползва за промяна на стойностите от полето (вж. Фиг. 8.7.).



Следващите две стъпки са само препоръчителни.

5. Превключва се запитването в Datasheet View и се показват само стойностите, които ще бъдат променени.

6. Ако е необходимо да бъдат направени корекции в запитването работата продължава с действие 4.

7. Превключва се в режим Design View и се стартира запитването за изпълнение.

8. Извежда се информационно съобщение в колко записа ще бъдат променени стойностите. Работата приключва с натискане на Yes.

 

6. SQL оператор за make-table запитване

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

SELECT field1[, field2[, ...]]

INTO newtable [IN externaldatabase]

FROM source

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

Запитването, описано в т. 2, за създаване на нова таблица Stud2, съдържаща само датата на раждане на студентите от Свищов, както и SQL версията на запитването са представени на Фиг. 8.8.





6. SQL оператор за delete запитване

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

DELETE [table.*]

FROM table

WHERE criteria

Елемент

Описание

table

Опционно име на таблица от която се изтриват записи.

table

Име на таблица от която се изтриват записи.

criteria

Израз, определящ кои записи ще се изтриват.

Стандартно този оператор изглежда така:

DELETE FROM table WHERE criteria

Вариант на SQL операторът, съответстващ на запитването, представено на Фиг. 8.3. е показан на Фиг. 8.9.



7. SQL оператор за append запитване

Запитването, чрез което се добавят записи от една в друга таблица ползва следният SQL оператор:

Синтаксис за няколко записа:

INSERT INTO target [IN externaldatabase]

[(field1[, field2[, ...]])]

SELECT [source.]field1[, field2[, ...]

FROM tableexpression

Синтаксис за един запис:

INSERT INTO target [(field1[, field2[, ...]])]

VALUES (value1[, value2[, ...])



Елемент

Описание

target

Име на таблица (или запитване) към която се добавят записи.

externaldatabase

Път към външна база от данни.

source

Име на таблица (или запитване) от която се копират записите.

field1, field2

Имената на полетата, към които се добавят данни, ако са след target аргумента; или имената на полетата, от които се вземат данните, ако са след source аргумента.

tableexpression

Името на таблицата от която се вземат записите. Този аргумент може да е име на една таблица или резултиращ от INNER JOIN, LEFT JOIN или RIGHT JOIN операции.

value1, value2

Стойностите за вмъкване в определени полета на новия запис. Всяка стойност се вмъква в полето, кореспондиращо с пози­цията на стойността в списъка. Стойност1 се вмъква в Поле1, Стойност2 в Поле2 и т.н. Стойностите се разделят със запетая, а текста се поставя в кавички.

Вариант на SQL операторът, съответстващ на запитването, представено на Фиг. 8.6. е показан на Фиг. 8.10.

 



6. SQL оператор за update запитване

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

UPDATE table

SET newvalue

WHERE criteria;

Елемент

Описание

table

Името на таблицата съдържаща записите, които ще бъдат модифицирани.

newvalue

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

criteria

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

Вариант на SQL операторът, съответстващ на запитването, представено на Фиг. 8.7. е показан на Фиг. 8.11.



Каталог: 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
отнасят до администрацията

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