Ако работите с бази данни ежедневно, рано или късно ще се наложи да създавате заявки в... Microsoft Access за да получите точно информацията, от която се нуждаете. В това ръководство ще намерите ясно и изчерпателно обяснение на най-често срещаните типове заявки, как да ги проектирате от нулата и как да ги направите още една крачка напред, като създадете таблици от техните резултати. Всичко това е придружено от практични съвети и предупреждения, така че нищо да не ви блокира в процеса. Идеята е, че можете да проектирате, изпълнявате и използвате повторно заявки в Access с увереност..
Въпреки че концепцията за „заявка“ може да звучи технически, в Access това е просто добре формулиран въпрос относно вашите данни. Ще научите как да избирате полета, да установявате точни критерии, да добавяте изрази и, когато е уместно, да запазвате резултата като нова таблица. Ще разгледаме също как да превключваме между изгледи, за да валидираме резултатите, как да избягваме често срещани грешки и как да използваме разделените формуляри, за да работим по-бързо..
Какво е заявка за избиране в Access?
Заявките за избор са в основата на всичко в Access: те ви позволяват да заявявате една или повече таблици и да извличате само записите, които отговарят на определени условия. Резултатите от тях се показват в табличен лист, известен като „Лист с данни“, а в някои учебни материали - като „Физически лист с отговори“. Важното е, че промените, които правите в този лист, влияят на изходните таблици, защото резултатът е свързан с реалните данни..
Заявката за избор може да се базира на една таблица или на няколко таблици; ако комбинирате няколко таблици, силно се препоръчва тези таблици да бъдат правилно свързани, за да се постигнат последователни резултати. Този подход избягва неочаквани дубликати и опростява интерпретацията на върнатия набор..
В допълнение към избирането на полета такива, каквито са, можете да включвате изрази и изчисляеми колони. Това означава, че заявката може да генерира производни данни, които буквално не съществуват в никоя таблица, като например суми, конкатенации на текст или трансформации на дати. Това ви позволява да отговорите на въпроси, които надхвърлят „суровите“ данни..
В сценарии за анализ или отчитане, много заявки за избор служат като основа за други процеси: от отпечатан отчет до генериране на дъмп таблица, която е замразена във времето. Именно това е ролята на заявките за създаване на таблици, която ще обсъдим по-късно..

Критерии и изрази: Как да филтрирате и изчислявате
Критериите са правила, които ограничават набора, върнат от заявка. Ако не ги използвате, ще видите всички записи; ако ги използвате, ще филтрирате само това, от което се нуждаете. Типични примери са числови диапазони и текстови съвпадения. Например критерий като >25 и <50 извлича стойности по-големи от 25 и по-малки от 50 за числово поле.
За текст можете да комбинирате условия с ИЛИ. Пример за книга би бил „Чикаго“ или „Париж“ или „Москва“ приложено към поле „Град“. Това ще доведе до това заявката да върне само записи, принадлежащи на някое от тези местоположения, с изключение на всички останали градове.
Когато имате нужда от изчисления или логически операции, се използват изрази. Изразът е комбинация от имена на полета, оператори, функции и константи, която произвежда една единствена стойност. Класически пример: * , което умножава цената по количество и връща сумата на реда. Тези изчислени колони могат да се използват като всяко друго поле в мрежата за проектиране..
Изразите могат да стават все по-сложни и да разчитат на вградени функции. Добра практика е да започнете с нещо просто и да валидирате стъпка по стъпка в изглед на лист с данни. Ако резултатът не е очакваният, проверете скобите, типовете данни и точните имена на полетата..

Проектиране на заявка за избор стъпка по стъпка
Проектирането на заявка в Access е итеративен процес: избирате източници, избирате полета, прилагате критерии, изпълнявате я и, ако е необходимо, я коригирате. Колкото по-ясно сте формулирани относно въпроса, на който искате да отговорите, толкова по-директна ще бъде конструкцията..
- Отидете на раздела Създаване и изберете Дизайн на заявкиТова отваря дизайнера с мрежата в долната част и област в горната част за показване на съответните таблици.
- Добавете таблиците или заявките, които ще служат като източници. Можете да направите това по няколко начина: чрез двукратно щракване върху таблицата, като го плъзнете в горната част на дизайнера или го изберете в панела „Добавяне на таблици“ и щракнете върху бутона за добавяне. Този панел ви позволява да превключвате между Таблици, заявки, връзки y Всички да се покаже всичко налично.
- В горната част отворете всяка таблица и щракнете двукратно върху полетата искате да включите. Ще ги видите добавени към реда „Поле“ на решетката за проектиране в долната част.
- По избор, добавяне на изрази като ги въведете директно в колона на реда „Поле“ (например,
Importe: *). - Ако е необходимо да стесните резултатите, напишете критериите в реда „Критерии“ на всяка съответна колона.
- Кликнете върху тичам за да видите резултата. Ако нещо не съвпада, върнете се към „Дизайн“, коригирайте полета/критерии/изрази и повтаряйте, докато получите точно това, което търсите.
Панелът „Добавяне на таблици“ може да бъде закрепен отстрани или да се позиционира в центъра; можете да го плъзнете за заглавната лента, за да промените режима му. Ако го затворите случайно, той ще се появи отново от раздела „Проектиране на заявки“ с бутона „Добавяне на таблици“..
Детайл, който си струва да знаете: ако изтеглите едно и също поле в мрежата повече от веднъж, при изпълнение на заявката може да се появи тип заглавка ИзразNNNNТова показва неочакван дубликат; премахнете дублиращата се колона в изглед за проектиране и тя ще бъде поправена. Този симптом е често срещан при бързо плъзгане на полета или при тестване на формули..
Винаги, когато имате нужда, превключвайте между изгледа на Дизайн и Лист с данниПреглеждането на междинния резултат помага да се провери дали критериите и изразите са приложени правилно, особено в заявки с множество таблици или изчисления. Достъпът до резултатите по време на проектирането ви позволява да извършвате итерии бързо.
Преобразуване на заявка за избор в заявка за създаване на таблица
Накарайте заявките за таблици да вземат резултатния набор от select и да го заредят в нова таблица. Това е полезно за копиране или архивиране на данни, да намалят натоварването, когато сложна заявка се изпълнява върху много голям обем, или просто да запазят „парче“ информация в определен момент.
Да разгледаме сценарий на продажби: генерирате обобщение всеки ден от вече приключени транзакции, които няма да се променят. Вместо непрекъснато да преизчислявате това обобщение за огромен склад, можете да изхвърлите резултатите в обобщена таблица и да я използвате като източник на отчети. Забележка: Новата таблица е самостоятелно копие, тя не е автоматично свързана с изходните таблици..
- Част от работеща заявка за избор и да върнете точно записите и полетата, от които се нуждаете. Ако все още нямате такъв, създайте такъв и тествайте резултатите му в Datasheet.
- Отворете заявката в режим на проектиранеМожете да направите това по няколко начина: ако е отворено в лист с данни, щракнете с десния бутон върху раздела на документа и изберете „Изглед за проектиране“; ако е затворено, щракнете с десния бутон върху заявката в навигационния екран и изберете „Изглед за проектиране“.
- На лентата, под Инструменти за заявки, Отворете раздела „Дизайн“ и в групата „Тип заявка“ изберете „Създаване на таблица“.Ще се отвори съответният диалогов прозорец.
- ВИме на таблицата„, въведете името, което ще има целевата таблица, или изберете съществуваща, ако искате да я презапишете (с повишено внимание).
- Изберете целевото местоположение: Можете да създадете таблицата в текуща база данни о EN друга база данни като посочите пътя до .accdb/.mdb файла. Тази опция е много полезна, ако трябва да експортирате резултата за друг проект.
- Изпълнете заявката. Access ще генерира новата таблица със записите, върнати от селекцията. Ако по-късно изпълните отново същата заявка за създаване на таблица, имайте предвид, че съдържанието се замества според конфигурираното поведение.
Важен нюанс: за разлика от заявките за избор, това е заявка за действиеОт съображения за сигурност Access може да блокира изпълнението, ако базата данни не е в надеждно местоположение или не сте активирали съдържанието. В следващия раздел обяснявам как да се избегне това блокиране..
Заявки за действие и надеждна база данни
Access класифицира като „заявки за действие“ тези, които променя данни или структурадобавяне, актуализиране, изтриване и създаване на таблица. Тъй като те променят информацията, програмата добавя слоеве на сигурност, за да предотврати неволното им изпълнение.
Ако се опитате да изпълните някоя от тези заявки и нищо не се случва, погледнете лентата на състоянието или лентата за съобщения на Access. Вероятно ще видите предупреждение, подобно на това: „Деактивираният режим е блокирал действието или събитието.“ Това означава, че базата данни не е маркирана като надеждна.
Решението е просто: в лентата за съобщения под лентата, Кликнете върху „Активиране на съдържанието“След това изпълнете заявката отново. От този момент нататък Access ще ви позволява да изпълнявате заявки за действие, стига базата данни да е в надеждно местоположение или да остане активирана. Ако работите с няколко бази данни, повторете активирането във всяка от тях..

Разделени формуляри за едновременно преглеждане и редактиране
Когато работите с резултати от заявки, може да е много удобно да имате два изгледа едновременно: един във формат на електронна таблица за бързо превъртане през записи и друг във формат на формуляр за удобно редактиране. Точно това е... разделена форма.
Създаването му е лесно. От навигационния панел, изберете таблицата или заявката който съдържа данните, които искате да покажете. След това отидете на Създаване > Още формуляри > Разделяне на формулярAccess ще генерира оформление със списъка в горната или долната част и формуляра с подробности в другия панел. Използвайте мрежата за търсене или внедряване персонализирани търсачки в Access и формата за промяна с контекст.
Съвети за дизайн и често срещани грешки
В заявки, които комбинират множество таблици, понякога ще е необходимо да върнете множество полета в една таблица с резултати. Технически това може да „денормализира“ информацията, като групира данните за клиенти, превозвачи и доставчици в един изход. Това е добре за анализ или отчитане, но избягвайте използването на тези денормализирани таблици като източник за запис в производствени системи..
Ако забележите странни заглавки като ИзразNNNN В резултат на това почти винаги се получава така, защото сте включили едно и също поле два пъти в мрежата за проектиране. Върнете се в изглед за проектиране и изтрийте дубликата. Това е незабавно решение, което почиства изхода, без да докосва оригиналните данни..
За да поддържате контрол при прилагане на сложни критерии, добавяйте условия едно по едно и изпълнявайте заявката често. По този начин, ако нещо не се филтрира според очакванията, ще можете да определите точното място, където се отклонява. Тозият постепенен подход избягва загубата на време за отстраняване на грешки в твърде дълги изрази..
Също така не забравяйте, че заявките за избор показват данни в реално време. Ако редактирате стойност в листа с резултати, тя ще се промени в изходната таблица. Ако не искате да променяте оригиналните данни, създайте заявка за създаване на таблица и работете върху полученото копие..
Превключване на изгледи за по-бърза итерация
Access улеснява превключването между Изглед на дизайна на консултацията и на Изглед на информационен листТова взаимодействие е ключово за бърза проверка дали полетата и критериите връщат очакваните резултати, без да се чака до края на дизайна за валидиране. Тестване, преглед, коригиране и повторно изпълнение: това е идеалната динамика.
За да промените изгледите, ако заявката е отворена, просто щракнете с десния бутон върху раздела на документа и изберете желания изглед. Ако заявката е затворена, щракнете с десния бутон върху нея в навигационния екран и я отворете в желания изглед. Овладяването на тези преки пътища ще ви спести много кликвания по време на дълги работни сесии..
Вече имате пълна карта: какво представляват заявките за избор, как да прилагате критерии и изрази, как да ги проектирате стъпка по стъпка и как да ги конвертирате в нови таблици, когато имате нужда от стабилен дъмп. Също така знаете как да избягвате заключванията за сигурност и кога да разчитате на разделен формуляр, за да постигнете гъвкавост. Оттук можете да създавате по-мощни заявки и да държите анализа си под контрол без изненади..