Microsoft Word Master thesis of Petar Kormushev in Medical Informatics doc



Pdf просмотр
страница17/41
Дата17.04.2022
Размер2.9 Mb.
#114126
ТипДиплом
1   ...   13   14   15   16   17   18   19   20   ...   41
Kormushev MSc thesis Bio 2006
Свързани:
1601561030 Dobrinka Bogdanova
2.2.1. Стъпка 1 - „Данни за извадката
В тази стъпка се указват таблиците, от които ще се прави извадката. Това включва дефиниране както на from клаузата на заявката, така и евентуални join клаузи за свързване на допълнителни таблици.
Тъй като основната цел на Конструктора е да се абстрахира максимално от синтаксиса на SQL, затова вместо да се показват имена на таблици и ключове за свързването им, в
Конструктора се показват списък с предварително дефинирани варианти за избор. Тези варианти представляват готови множества от from и join клаузи, дефинирани предварително от медицински експерт с помощта на администратор на базата от данни.
На фигура 2.3 е показана как изглежда тази стъпка в Конструктора.
Фигура 2.3. Стъпка 1 - „Данни за извадката
Ако потребителят избере „Само от пациенти” от предефинираните варианти, то в този момент ще се генерира приблизително следната първоначална SQL заявка:
select
*
from
Пациенти


22
Аналогично, ако потребителят избере „От пациенти и прегледи”, то SQL заявката ще изглежда приблизително така:
select
*
from
Пациенти
inner join
Прегледи on (Прегледи.пациент = Пациенти.пациент)
Спестяването на детайлите относно ключовите полета и свързването на таблиците е огромно облекчение за крайните потребители, тъй като познаването на тези подробности е по силите само на опитен администратор на бази.
2.2.2. Стъпка 2 - „Условия за удовлетворяване
Това е може би най-интересната стъпка от конструирането, защото тя отговаря за задаване на критериите, на които трябва да отговарят обектите от извадката.
Критериите се представят чрез логическите условия в where клаузата на заявката, както и свързващите ги логически оператори - and, or и not. На фигура 2.4 е показан общ изглед от тази стъпка в Конструктора.
Фигура 2.4. Стъпка 2 - „Условия за удовлетворяване
За максимално улеснение на потребителите сме проектирали следните ключови функционални възможности за тази стъпка:


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


Таблица 2.2. Съобразени с типовете на атрибута допустими операции и операнди

Тип на
избрания
атрибут
Допустими
операции
Допустими операнди
Булев тип
(True/False)
Числов тип
Числов тип, съвпадащ с числовия тип на атрибута (целочислен или с плаваща запетая)


24
Тип на
избрания
атрибут
Допустими
операции
Допустими операнди
Символен тип
Произволен символен тип
Календарен тип (дата)
Дата, избрана от календар, така че да е валидна.

Таблица 2.2. Съобразени с типовете на атрибута допустими операции и операнди


Операцията „е празно” съответства на SQL операцията (IS NULL), което е съвсем различно от условието за равенство с празен низ (= “”).
• Трето, всеки атрибут, който е включен в логически израз автоматично получава свое ново копие (клонинг), който е свободен за свързване в нови операции. По този начин могат да се конструират сложни логически условия върху един и същи атрибут. Например, задаване на възрастов диапазон от 30 до 50 години включва две условия върху атрибута възраст: (възраст >= 30) и (възраст <= 50).
След задаване на всяко от тези две условия автоматично Конструкторът създава ново копие на атрибута Възраст, за да може да се използва за ново условие. В резултат се получават три екземпляра на атрибута, две от които са свързани с конкретно условие, а третият е свободен за използване:


25
• Четвърто, потребителят се освобождава от задължението явно да задава логическите връзки между отделните логически условия. Специално проектирания механизъм за „умно свързване” на логическите изрази се грижи да постави правилната операция на правилното място – AND или OR. Най- важните евристични правила, които се използват за реализиране на „умното свързване”, са изброени в таблица 2.3.

Таблица 2.3. Евристични правила заумно свързванена логически условия
Първо условие
Второ условие
Операнди


Сподели с приятели:
1   ...   13   14   15   16   17   18   19   20   ...   41




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

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