Главная страница
Навигация по странице:

  • Таблица 10 - Опции команды MySQLdump

  • Лабораторная работа №2. Моделирование баз данных средствами Erwin Цель работы

  • Рисунок 4 - Пример диаграммы с созданными сущностями Построение моделей в ERwin

  • Этапы построения информационной модели.

  • CREATE COMMENT on entity_name

  • Рисунок 6 - Указание свойств нового домена

  • Рисунок 7 - Значение по умолчанию для нового домена

  • Мощность связи (Cardinality)

  • Тип связи (идентифицирующая/неидентифицирующая).

  • Проектирование. 380305БИ_Проектирование баз данных_лабораторные_ПоповВБ.docx. Лабораторная работа 1. Интерфейс субд mysql. Предоставление доступа и привилегий. Утилиты, входящие в состав субд цель работы


    Скачать 1.15 Mb.
    НазваниеЛабораторная работа 1. Интерфейс субд mysql. Предоставление доступа и привилегий. Утилиты, входящие в состав субд цель работы
    АнкорПроектирование
    Дата11.12.2022
    Размер1.15 Mb.
    Формат файлаdocx
    Имя файла380305БИ_Проектирование баз данных_лабораторные_ПоповВБ.docx.docx
    ТипЛабораторная работа
    #839179
    страница3 из 14
    1   2   3   4   5   6   7   8   9   ...   14

    Опции:

    Таблица 8 - Опции команды MySQLAccess

    -?, --help

    Справка

    -u, --user=[username]

    Имя пользователя

    -p, --password=[password]

    Пароль пользователя

    -h, --host=[hostname]

    Имя хоста для проверки прав доступа

    -d, --db=[dbname]

    Имя базы данных для проверки прав доступа

    -U, --superuser=[susername]

    Имя суперпользователя(root)

    -P, --spassword=[spassword]

    Пароль администратора

    -b, --brief

    Выводит краткие сведения о таблице


    Mysqlshow
    Используется, чтобы показать, с какими базами данных работает сервер, какие таблицы содержит каждая БД и какие колонки есть в каждой таблице.Синтаксис:

    mysqlshow [опции] [database [table [field]]]

    Mysqlshow может использовать следующие параметры:

    Таблица 9 - Параметры команды Mysqlshow

    -?, --help

    Справка

    -h, --host=[hostname]

    Имя сервера

    -k, --key

    Показать ключи для таблицы

    -p, --password=[password]

    Пароль пользователя

    -u, --user=[username]

    Имя пользователя

    -p, --port=[port]

    Порт для связи

    -V, --version

    Вывести информацию о версии

    Если ввести mysqlshow без аргументов, будут показаны все базы данных, если указать имя БД, будут показаны все таблицы в ней.

    Команды

    mysqlshow

    mysqlshowmysql
    Mysqldump
    Программа mysqldump используется для создания дампа содержания базы данных MySQL. Она пишет инструкции SQL в стандартный вывод. Эти инструкции SQL могут быть переназначены в файл. Можно резервировать базу данных MySQL, используя mysqldump, но при этом Вы должны убедиться, что в этот момент с базой данных не выполняется никаких других действий. А то mysqldump Вам такого нарезервирует...

    Программа mysqldump поддерживает следующие параметры (Вы можете использовать короткую или подробную версию):

    Таблица 10 - Опции команды MySQLdump

    -#, --debug=[options]

    Вывести в протокол отладочную информацию. В общем виде 'd:t:o, filename`.

    -?, --help

    Справка.

    -c, --compleat-insert

    Генерируйте полные инструкции insert (не исключая значений, которые соответствуют значениям столбца по умолчанию).

    -h, --host=[hostname]

    Соединиться с сервером hostname.

    -d, --no-data

    Экспорт только схемы информации (исключая данные).

    -t, --no-create-info

    Экспорт только данных, исключая информацию для создания таблицы. Противоположность -d.

    -p, --password=[password]

    Пароль пользователя, для соединения с сервером MySQL. Обратите внимание, что не должно быть пробела между -p и паролем.

    -q, --quick

    Не буферизовать результаты запроса, дамп выдать непосредственно к STDOUT.

    -u, --user=[username]

    Имя пользователя. Если не задано, используется текущий логин.

    -v, --verbose

    Вывести подробную информацию относительно различных стадий выполнения mysqldump.

    -P, --port=[port]

    Порт для связи.

    -V, --version

    Информация о версии.

    Вы можете направить вывод mysqldump в клиентскую программу MySQL, чтобы копировать базу данных. ПРИМЕЧАНИЕ: Вы должны убедиться, что база данных не изменяется в это время, иначе Вы получите противоречивую копию!

    Для справки:

    mysqldump -u root -p mysql user>mysql-1.sql

    mysqldump -u root mysql>mysql-2.sql
    Примечание флаг –p используется в случае, если пользователь наделен паролем.

    После выполнения этой команды у нас появился файл mysql-1.sql и mysql-2.sql. Загрузим их в текстовый редактор, чтобы поподробнее изучить и возможно немного поправить.

    Задание

    Запустите сервер MySQL. Зарегистрируйте своего пользователя в консольном приложении, задайте ему права.

    С помощью утилиты Mysqlshow выполните команду на просмотр структуры и состав таблиц базы Mysql. Приведите в отчете её схему. С помощью утилиты Mysqldump получите полный дамп базы Mysql (данные и таблицы), а также отдельные дампы таблиц и данных.

    Контрольные вопросы:
    1. Каким способом возможен запуск серверной части СУБД.

    2. Что такое привилегия. Каково её предназначение.

    3. Какие основные утилиты входят в состав СУБД, какие функции они выполняют.
    Лабораторная работа №2.

    Моделирование баз данных средствами Erwin
    Цель работы – приобретение студентами практических навыков создания логических и физических моделей данных с помощью CASE – средств разработки информационных систем.
    Основные сведения
    Система ERwin поддерживает прямое и обратное моделирование баз данных. При прямом моделировании схема базы данных описывается в прямом виде с использованием диаграммы сущность-связь. Сущности на диаграмме представляются прямоугольниками. Каждый прямоугольник может иметь различные визуальные атрибуты. Каждой сущности должно быть присвоено уникальное имя. Имена сущностей необходимо задавать в единственном числе. Это определяется тем, что система всегда оперирует отдельными экземплярами сущности. При этом отдельные экземпляры сущности рассматриваются как объекты, а сущности – как класс объектов. Если сущности были описаны при моделировании в BPwin, то их можно просто импортировать в ERwin. Пример диаграммы с созданными сущностями приведен на рисунке.



    Рисунок 4 - Пример диаграммы с созданными сущностями

    Построение моделей в ERwin

    Возможны две точки зрения на информационную модель и, соответственно, два уровня модели. Первый - логический уровень (точка зрения пользователя) означает прямое отображение фактов из реальной жизни. Например, люди, столы, отделы, собаки и компьютеры являются реальными объектами. Они именуются на естественном языке, с любыми разделителями слов (пробелы, запятые и т.д.). На физическом уровне модели рассматривается использование конкретной СУБД, определяются типы данных (например, целое или вещественное число), индексы для таблиц.

    ERwin предоставляет возможности создавать и управлять этими двумя различными уровнями представления одной диаграммы (модели), равно как и иметь много вариантов отображения на каждом уровне. Термин "логический уровень" в ERwin соответствует концептуальной модели.

    Этапы построения информационной модели.

    • определение сущностей;

    • определение зависимостей между сущностями;

    • задание первичных и альтернативных ключей;

    • определение атрибутов сущностей;

    • приведение модели к требуемому уровню нормальной формы;

    • переход к физическому описанию модели: назначение соответствий имя сущности - имя таблицы, атрибут сущности - атрибут таблицы;

    • задание триггеров, процедур и ограничений;

    • генерация базы данных.

    Erwin создает визуальное представление (модель данных) для решаемой задачи. Это представление может использоваться для детального анализа, уточнения и распространения документации, необходимой в цикле разработки. Однако ERwin далеко не только инструмент для рисования. ERwin автоматически создает базу данных (таблицы, индексы, хранимые процедуры, триггеры для обеспечения ссылочной целостности и другие объекты, необходимые для управления данными).

    Создание сущности.

    Для внесения сущности в модель необходимо щелкнуть по кнопке сущности на панели инструментов (Erwin Toolbox) , затем - по тому месту на диаграмме, где необходимо расположить новую сущность. Щелкнув правой кнопкой мыши по сущности и выбрав из всплывающего меню пункт Entity Editor, можно вызвать диалог Entity Editor, в котором определяются имя, описание и комментарии сущности.

    Каждая сущность должна быть полностью определена с помощью текстового описания в закладке Definition. Эти определения полезны как на логическом уровне, поскольку позволяют понять, что это за объект, так и на физическом уровне, поскольку их можно экспортировать как часть схемы и использовать в реальной БД (CREATE COMMENT on entity_name). Закладки Note, Note2, Note3, UDP (User Defined Properties - Свойства, определенные пользователем) служат для внесения дополнительных комментариев и определений к сущности.

    В закладке Icon каждой сущности можно поставить в соответствие изображение, которое будет отображаться в режиме просмотра модели на уровне иконок и изображение, которое будет отображаться на всех других уровнях.

    Закладка UDP диалога Entity Editor служит для определения свойств, определяемых пользователем (User - Defined Properties). При нажатии на кнопку этой закладки вызывается диалог User - Defined Property Editor (также вызывается из меню Edit/UDPs). В нем необходимо указать вид объекта, для которого заводится UDP (диаграмма в целом, сущность, атрибут и т.д.) и тип данных. Для внесения нового свойства следует щелкнуть в таблице по кнопке и внести имя, тип данных, значение по умолчанию и определение.

    Создание атрибутов.

    Следующий этап создания модели состоит в задании атрибутов для каждой сущности. При задании типа атрибута имеется возможность использовать домены. Домен – это абстрактный пользовательский тип, который присваивается любому физическому типу данных. При этом каждый домен может иметь свои значения по умолчанию и правила проверки вводимых данных. ERwin предоставляет возможность документировать все действия по созданию собственных типов данных. С использованием концепции домена обеспечивается переносимость базы данных на различные аппаратные платформы.




    Рисунок 5 - Создание нового домена



    Рисунок 6 - Указание свойств нового домена










    Рисунок 7 - Значение по умолчанию для нового домена



    Рисунок 8 - Использование домена для указания типа данных атрибуту.5

    Для описания атрибутов следует, щелкнув правой кнопкой по сущности, выбрать в появившемся меню пункт Attribute Editor. Появится диалог Attribute Editor.

    Если щелкнуть по кнопке New, то в появившемся диалоге New Attribute можно указать имя атрибута, имя соответствующей ему в физической модели колонки и домен. Домен атрибута будет использоваться при определении типа колонки на уровне физической модели.

    Для атрибутов первичного ключа в закладке General диалога Attribute Editor необходимо сделать пометку в окне выбора Primary Key.
    Закладки Definition, Note и UDP несут те же функции, что и при определении сущности, но на уровне атрибутов.

    Для большей наглядности диаграммы каждый атрибут можно связать с иконкой. Это можно сделать при помощи списка выбора Icon в закладке General.

    Очень важно дать атрибуту правильное имя. Атрибуты должны именоваться в единственном числе и иметь четкое смысловое значение.

    Согласно синтаксису IDEF1X, имя атрибута должно быть уникальным в рамках модели (а не только в рамках сущности!). По умолчанию при попытке внесения уже существующего имени атрибута ERwin переименовывает его. Например, если атрибут Комментарий уже существует в модели, другой атрибут (в другой сущности) будет назван Комментарий/2, затем Комментарий/3 и т.д.

    При переносе атрибутов внутри и между сущностями можно воспользоваться техникой drag&drop, выбрав кнопку в палитре инструментов.

    Для создания новой связи следует выбрать идентифицирующую или неидентифицирующую связь в палитре инструментов (ERwin Toolbox), щелкнуть сначала по родительской, а затем по дочерней сущности.
    В палитре инструментов кнопка соответствует идентифицирующей связи, кнопка связи многие-ко-многим и кнопка соответствует неидентифицирующей связи. Для редактирования свойств связи следует щелкнуть правой кнопкой мыши по связи и выбрать на контекстном меню пункт Relationship Editor.

    В закладке General появившегося диалога можно задать мощность, имя и тип связи.

    Связи на диаграмме представляются линиями, идущими от одной сущности (таблицы) к другой. Каждой связи присваивается уникальное имя. Связанные таблицы разделяют на родительские и дочерние. Родительские таблицы отображаются прямоугольниками с прямыми углами, дочерние – со скругленными.

    Мощность связи (Cardinality) - служит для обозначения отношения числа экземпляров родительской сущности к числу экземпляров дочерней.
    Различают четыре типа мощности:

    • общий случай, когда одному экземпляру родительской сущности соответствуют 0, 1 или много экземпляров дочерней сущности, не помечается каким-либо символом;

    • символом P помечается случай, когда одному экземпляру родительской сущности соответствуют 1 или много экземпляров дочерней сущности (исключено нулевое значение);

    • символом Z помечается случай, когда одному экземпляру родительской сущности соответствуют 0 или 1 экземпляр дочерней сущности (исключены множественные значения);

    • цифрой помечается случай, когда одному экземпляру родительской сущности соответствует заранее заданное число экземпляров дочерней сущности.

    По умолчанию символ, обозначающий мощность связи, не показывается на диаграмме. Для отображения имени следует в контекстном меню, которое появляется, если щелкнуть правой кнопкой мыши по любому месту диаграммы, не занятому объектами модели, выбрать пункт Display Options/Relationship и затем включить опцию Cardinality.

    Тип связи (идентифицирующая/неидентифицирующая).

    В IDEF1X различают зависимые и независимые сущности. Тип сущности определяется ее связью с другими сущностями. Идентифицирующая связь устанавливается между независимой (родительский конец связи) и зависимой (дочерний конец связи) сущностями. Когда рисуется идентифицирующая связь, ERwin автоматически преобразует дочернюю связь в зависимую. Зависимая сущность изображается прямоугольником со скругленными углами.

    Экземпляр зависимой сущности определяется только через отношение к родительской сущности. При установлении идентифицирующей связи атрибуты первичного ключа родительской сущности автоматически переносятся в состав первичного ключа дочерней сущности. Эта операция дополнения атрибутов дочерней сущности при создании связи называется миграцией атрибутов. В дочерней сущности новые атрибуты помечаются как внешние ключи - (FK).

    При установлении не идентифицирующей связи дочерняя сущность остается независимой, а атрибуты первичного ключа родительской сущности мигрируют в состав не ключевых компонентов дочерней. Не идентифицирующая связь служит для связи независимых сущностей.

    Идентифицирующая связь показывается на диаграмме сплошной линией с жирной точкой на дочернем конце связи, не идентифицирующая - пунктирной.

    Для не идентифицирующей связи можно указать обязательность (Nulls в закладке General диалога Relationship Editor). В случае обязательной связи (No Nulls) при генерации схемы БД атрибут внешнего ключа получит признак NOT NULL, несмотря на то, что внешний ключ не войдет в состав первичного ключа дочерней сущности. В случае необязательной связи (Nulls Allowed) внешний ключ может принимать значение NULL. Необязательная не идентифицирующая связь помечается прозрачным ромбом со стороны родительской сущности
    1   2   3   4   5   6   7   8   9   ...   14


    написать администратору сайта