1626434812-e667f6b6e7e69d3a0798830a58e9075b (844135), страница 24
Текст из файла (страница 24)
при отсутствии экземпляра хотя бы одной из родительских сущностей экзсмпляр сущности СДЕЛКА перестает описывать сделку по об- мену валюты. Эти параметры задаются при помощи редактора связей (рис. 5.6.19). Вызвать этот редактор можно двойным нажатием левой клавиши мыши над связью. Задание ограничений ссылочной целостности, а также указание ролей про- изводится на закладке Ко1епавеЖ1 Ас6оп панели диалога редактора связей (рис. 5.6.20).
Гтава 5. Гемантичесное мод~иирование в базах данных Рис. 5.б.19. Панель диалога редикиюра связей Рис. 5.6.20. Закладка йо!сиате/ИАсйаи ии иаисли диалога редактора связей Базы данных. Интеллектуальнал обработка информации Ограничения ссылочной целостности, задаваемые по умолчанию Ейичп, в данном случае можно оставить без изменений. Указание ролей понадобится лишь для связей между сущностями ВАЛЮТА и СДЕЛКА (см. пример на рис. 5.б.4). После задания связей между сущностями диаграмма будет выглядеть следуюшим образом (см. рис.
5.6.21). Рис. 5.6.Л, Логическая модель со связали Теперь для каждой сущности необходимо указать первичные ключи и не- ключевые атрибуты. Кроме того, для некоторых, возможно, понадобится задание альтернативных ключей и инверсных входов. Хорошим источником информации в этом случае может стать перечень требований к хранимой информации, приведенный в задании. Рассмотрим по очсреди каждую нз сущностей.
Млава 5. Семантическое моделирование в базах данных Сведения о клиенте должны состоять из его фамилии, имени, отчества и номера его паспорта. Очевидно, что они и будут атрибутами сущности КЛИЕНТ. Первичным ключом можно было бы выбрать номер паспорта, поскольку он однозначно идентифицирует любой из экземпляров этой сущности. Однако номер паспорта не является числом, т.к., кроме цифр, содержит и буквы, и, следовательно, для его хранения будет использоваться строка минимум из 13 символов, что не совсем удобно. Поэтому введем для каждого КЛИЕНТА уникальный номер, который и будет первичным ключом. А атрибут "номер паспорта клиента" сделаем альтернативным ключом, чтобы обеспечить возможность быстрого поиска информации о сделках по его значениям, согласно заданию. Сведения о кассире должны включать фамилию, инициалы и учетный номер кассира- они и будут атрибутами сущности КАССИР.
Поскольку учетный номер личного дела кассира может содержать не только цифры, как и в предыдущем случае, введем для каждого экземпляра уникальный номер, который и будет первичным ключом. По тем же соображениям сущность ВАЛЮТА будет содержать два атрибута: код валюты и название валюты, первый из которых будет первичным ключом.
Что касается сущности СДЕЛКА, то часть атрибутов она унаследует от родительских сущностей и остается лишь добавить следующие: "дата сделки", "время сделки", "сумма покупаемой валюты" и "сумма продаваемой валюты". Очевидно, что первичным ключом, следует выбрать уникальный цифровой код сделки, Поскольку в задании сказано, что создаваемая система должна позволять вычислить денежный оборот за один или несколько дней, полезно было бы сделать атрибут "дата сделки" инверсным входом, т.к. он довольно часто будет использоваться для доступа к данным. Для задания первичных ключей и атрибутов используется редактор атрибутов. Перейти в него можно, воспользовавшись всплывающим меню, представленным на рис. 5.6.17.
Панель диалога этого редактора изображена на рис 5.622. Для задания альтернативных ключей и инверсных входов следует воспользоваться редактором ключей. Переход в него осуществляется так же, как и в редактор атрибутов. Общий вид этого редактора приведен на рис. 5.6 23. На этом процесс создания логической модели завершается, а сама модель приобретает вид, представленный на рис 5.6.24. Глава 5. Семантическое моделирование и 6азах данных.
З~у1оз!ереиа!сус ' 10 ! 41 СДЕЛКА КАССИР Рис. 5.б,24. Логическая модель с п~лрпй>тами 5.6.7.3. Создание физической модели БД и генерация схемы БД Перед тем как приступить к созданию физической модели, необходимо выбрать сервер СУБД.
Вид панели диалога, позволяющей это сделать, приведен на рис. 5.6.25. Напомним, что на уровне физической модели сущности соответствует таблица в реальной СУБД, атрибуту — колонка таблицы, связи — внешний ключ (если для связи задавалось имя роли, то оно соответствует имени колонки внешнего ключа в дочерней таблице), первичным и альтернативным ключам — уникальные индексы, а инверсным входам — не- уникальные. Поскольку логическая модель разрабатывалась на русском языке, то имена таблиц, колонок и индексов необходимо задать на английском языке. Кроме того, для каждой колонки необходимо указать тип данных, возможность пустых значений и т.п.
Базы данныл. Ин)пеллек~нуальнан обрайиика информации Рнс. 5.б.25. Панель выбора серверп СУБД Для задания английснх имен таблиц нсобходимо воспользоваться радактором таблиц, для остальных манипуляций — редактором колонок. Вызов любого их них можно осуществить при помоши всплывающего мегно, представленного на рис 5.6.26. Рпс. 5.б. 26. Меио вызова редакторов, относяиппся к тпблнцам Диалоговое окно редактора колонок представлено на рис. 5.6.27.
После того как будут выполнены все действия, физическая модель приобретет следуюший вид (см. рис. 5.6.28). Вносить изменения в шаблоны триггеров и хранимых процедур в рассматриваемом примере нет необходимости. Глава 5. Семантическое моделирование в базах даииит Рис. 5.б.27. Панель диалога редактора колонок. Рие. 5.6.28. Физическан модель Базы данных.
Интеллектуальная обработка инфориации Последним шагом является генерация схемы БД. Все необходимые параметры можно задать на предназначенной для этого панели диалога (см. рис. 5.6.29). Нажатие кнопки Ргеиев позволяет просмотреть код, который будет автоматически создан ЕКъчп. Генерация схемы БД запускается нажатием кнопки бепега1е. Рис. 5.6.29.
Панель гемераиии схемы БД Глава 6. Системы, основанные на знаниях 6.1. Знания и их представление 6.1.1. Знания Со времен изобретения первых компьютеров человек стремился использовать их для решения все более сложных задач. Поэтому с тех самых времен возникла необходимость изложения знаний, которые он использует для решения этих задач, в форме, пригодной для обработки с помощью машины. Первым подходом к такой формализации знаний стал алгоритмический, или процедурный подход.
В ходе его развития можно было наблюдать значительный прогресс от языка машинных кодов до языков высокого уровня типа Си, Паскаль. Однако суть этого подхода не изменилась — знания выражаются в виде жесткой последовательности действий, предписываемых к выполнению компьютером. Составленная для компьютера прикладная программа составляет единое целое со знаниями, что.влечет за собой ряд недостатков: 1.
Увеличение сложности решаемых задач приводит к тому, что программы становятся все сложнее для понимания, и поэтому затрудняется их разработка. 2. Изменения, происходящие в предметной области, зачастую требуют корректировки алгоритма решения задачи, что затем выражается в повторном написании отдельных фрагментов программы, а иногда и всей программы целиком. Необходимым условием возможности решения какой-либо задачи в рамках процедурного подхода является наличие четкого алгоритма. Поэтому автоматизация коснулась прежде всего так называемых формализованньп задач, алгоритм решения которых хорошо известен (например, задача расчета заработной платы).
Однако существует класс задач, называемых нефора ализованными, характеризующихся одной или несколькими из следующих особенностей ~33~: 1. алгоритм решения задачи неизвестен или не может быть использован изза ограниченности ресурсов компьютера; 2. задача не может быть определена в числовой форме; 3. цели задачи не могут быть выражены в терминах точно определенной целевой функции. Заметим, что по объему этот класс значительно превосходит класс формализованных задач. Базы данных Интеллектуальная обрабтика иифорлацнн Попытки решения неформализованных задач, а также попытки устранить перечисленные выше недостатки процедурного подхода привели к формированию в области искусственного интеллекта (ИИ) отдельного направления — инзэсене1эии знаний. Суть подхода, применяемого в инженерии знаний, состоит в выделении знаний из программного обеспечения вычислительной системы и превращении их в одну из компонент ее информационного обеспечсния, называемую базой знаний.