Описание отдельных модулей проекта — КиберПедия 

История развития хранилищ для нефти: Первые склады нефти появились в XVII веке. Они представляли собой землянные ямы-амбара глубиной 4…5 м...

Механическое удерживание земляных масс: Механическое удерживание земляных масс на склоне обеспечивают контрфорсными сооружениями различных конструкций...

Описание отдельных модулей проекта

2022-01-17 17
Описание отдельных модулей проекта 0.00 из 5.00 0 оценок
Заказать работу

Типы таблиц

В SQL Server предусмотрено разбиение таблиц на типы. Каждый тип предназначен для достижения определенных целей в БД. Кроме стандартных, существуют такие типы таблиц:

1.Секционированные.Такими таблицами называю те, в которых информация поделена секциями (блоками) горизонтально. Блоки могут распределяться между разными группами файлов в БД. Разбиение на секции облегчает управление индексами и таблицами огромных размеров.

Разделение на секции позволяет мгновенно иметь доступ к наборам данных, а также управлять ими максимально эффективно, соблюдая целостность общей коллекции. В SQL Server по умолчанию поддерживается до 15000 секций.

Временные-Такие таблицы сохраняются в базе данных tempdb, по умолчанию содержащуюся в MS SQL Server и также называют темпоральными. Они полезны для хранения табличных данных как части сложного комплексного скрипта. Срок существования – сессия БД. Потому временные таблицы удобно использовать для промежуточных, временных данных. При создании временной таблицы с помощью CREATE TABLE в SSMS (QUERY Editor), ее срок существования будет ограничен тем временем, пока открыт данный редактор запросов. Потому, к темпоральной таблице можно обращаться из разных скриптов внутри редактора SSMS.

В том случае, когда нужно удалить таблицу еще до окончания сессии, используется команда DROP TABLE. У всех темпоральных таблиц – первый символ #. Они делятся на два вида:

локальные – доступные лишь текущему соединению пользователя. В начале таблицы находится символ (#). После отключения пользователем от экземпляра SQL Server сразу удаляются;

Глобальные – доступные всем пользователям. Начинаются с двойного символа (##).Будут удалены после того, как отключатся от SQL Server все пользователи, ссылающиеся на них.

SQL Server 2019 (15.x) на всех уровнях совместимости структур БД с помощью временных таблиц уменьшает количество повторных компиляций.

SQL Server дополнительно производит простые проверки во избежание неоправданных перекомпиляций:

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

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

В итоге уменьшается количество ненужных перекомпиляций, а также снижается нагрузка на ЦП.

Производные

В отличие от предыдущих, производные таблицы более эффективны в плане производительности. Их также можно создавать в MS SQL Server задав ключевым словом WITH.

Отличаются от предыдущих еще и тем, что хранятся в оперативной памяти. Они будут существовать лишь во время первого выполнения запросов (QUERIES), представляющих данную таблицу.

Системные-Системным называют специальный набор таблиц, в котором SQL Server сохраняет информацию, определяющую конфигурацию сервера вместе со всеми его таблицами. Всем пользователям не доступно выполнение прямого запроса либо обновления таких таблиц.

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

Широкие-В таких таблицах применяются разреженные списки. Это дает возможность расширить в них общее количество столбцов и статистик до 30000, а индексов – до 1000.

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

В широких таблицах размеры строк – до 8019 байт. Не меняется максимально допустимое количество незаряженных и вычисляемых столбцов (равно 1024).

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

Динамическое добавление или удаление столбцов возможно через приложение. Скомпилированные планы запросов становятся также недействительными. При разработке приложений должна учитываться предполагаемая рабочая нагрузка. Это позволит минимизировать риск изменений в схеме.

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

В широких таблицах необходимо ограничить реализацию инструкций DML, которые обновляют строки ключа кластеризации. Причина – может понадобиться большой объем ресурсов для выполнения и компиляции вышеуказанной инструкции.

Для выполнения операций по переключению секций может понадобиться большой объем памяти, а значит, и продолжительный промежуток времени на выполнение.

Для оптимизации работы курсоров обновления (отвечающих за обновление нужных строк) требуется явное перечисление этих столбцов в FOR UPDATE.

Листинг отдельных программных модулей проекта

Классификация связей

При проектировании БД информацию обычно размещают в нескольких таблицах. Таблицы при этом связывают с семантикой информации.

В реляционной СУБД для указания связей в таблице производят операции их связывания. Рассмотрим наиболее часто встречаемые бинарные связи:

1.Связи вилла 1:1 образуется в случае, когда все поля записи основной таблицы и дополнительной таблицы являются ключевыми.

2.Связь 1:М может быть в случае, когда одной записи основной таблицы соответствует несколько записей дополнительной таблицы.

3.Связь М:1 может быть тогда, когда нескольким записям основной таблицы ставится в соответствии одна запись дополнительной.

4. Связь М:М возникает в том случае когда нескольким записям основной таблицы соответствует несколько записей дополнительной. В реляционной БД связь М:М реализуется через дополнительные таблицы.

Рассмотрим связи между выявленными сущностями:

1. Между атрибутами книги и тематики будет связь 1:M, так как книги бывают с разной тематикой.

2. Между атрибутами книги и издательство будет связь 1:1, так как у одной книги может быть только один издатель.

3. Между атрибутами книги и учёт книг будет связь 1:М, так как к книгам иметься разная информация.

Выбор ключей

Атрибут значение, которого идентифицируется кортежами (строками таблицы) называется ключом. Отношение может содержать и несколько ключей, один из которых объявляется первичным. Первичные ключи не могут обновляться. Все прочие ключи отношений являются возможными ключами.Если в отношении кортеж идентифицируется соединением значений нескольких атрибутов, то такой ключ называется составным.

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

В разрабатываемой БД агентства недвижимости будет являться ключом для атрибутов издательство, книги, тематика, учёт книг и читатели.

Атрибут наименование книги также имеет уникальные поля, такие как автор и взявший книгу.

 

ОТЛАДКА И ТЕСТИРОВАНИЕ

Для работы с базами данных можно использовать sql команды. Команды CREATE DATABASE позволяет создавать новую БД. Создадим базу данных для агентства недвижимости с помощью запроса:

CREATE DATABASE недвижимость;

Команда CREATE TABLE позволяет создавать таблицу.

Далее представлена команда для создания таблицы, но только на языке T-SQL с использованием инструкции CREATE TABLE(Рисунок 1).

CREATE TABLE недвижимость

[ФИО клиента] [varchar(50)] [NOT NULL],

[Номер телефона клиента] [int] [NOT NULL],        

[Тип недвижимости] [int] [NOT NULL],

[Код недвижимости] [int] [NOT NULL],

[Площадь недвижимости] [int] [NOT NULL],

[Стоимость] [rub] [NOT NULL],

[ФИО риэлтора] [varchar(50)] [NOT NULL],

[Номер телефона риэлтора] [varchar(50)] [NOT NULL],   …)

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

SELECT фио клиента, номер телефона клиента, площадь недвижимости, стоимость

ROM Недвижимость

Фильтрация по одному значению с помощью sql команды для поиска выбранного типа недвижимости (Рисунок 2-3)

 select * from Недвижимость

WHERE Тип недвижимости = 'Квартира'. Эта команда позволяет сотруднику фирмы найти информацию о квартирах и их владельцах. Владельцах итог виден на рис.3.

select Стоимость, from Недвижимость

GROUP BY Стоимость

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

select * from Недвижимость

ORDER BY Площадь недвижимости

И как же не забыть про команду LIKE, позволяющая искать информацию, в которой есть выбранное нами значение. Найдем в таблице клиентов с отчеством Анатольевич(Рисунок 5).

Хочется отметить такую команду как JOIN. Это необязательный элемент, используется для объединения таблиц по ключу, который присутствует в обеих таблицах. Перед ключом ставится оператор ON. Но в моей работе это не пригодится, так как нет второй таблицы для связки, к сожалению.

Все описанные выше команды Sql применяются для работы с Базой Данных и все, что к ней относится. 

BETWEEN-используется для выбора значений данных из определенного промежутка. Могут быть использованы числовые и текстовые значения, а также даты.

SELECT <col_name1>, <col_name2>, …

FROM <table_name>

WHERE <col_namex> BETWEEN <value1> AND <value2>;

VIEW — это виртуальная таблица SQL, созданная в результате выполнения выражения. Она содержит строки и столбцы и очень похожа на обычную SQL-таблицу. VIEW всегда показывает самую свежую информацию из базы данных.

Создание

CREATE VIEW <view_name> AS

 SELECT <col_name1>, <col_name2>, …

 FROM <table_name>

 WHERE <condition>;

 

 

ЗАКЛЮЧЕНИЕ

В процессе выполнения данной курсовой работы было изложено очень важная информация о базах данных, их типах и т.д. Также немаловажным было изучение информации о таблицах и работы с их данными, было написано про создание БД и таблицах. Подробное описание языка Sql, а также про их структурированное построение. Подробно были рассмотрены реляционные базы данных. Также рассмотрено о особенностях запросов, внесения, хранение и извлечение.

В ходе выполнения курсового проекта был выполнены следующие задачи:

-изучение информации по выбранной теме;

-научиться создавать базы данных и работать с ними;

-использовать запросы для поиска необходимой информации;

-построить базу данных “недвижимость”;

-создать таблицу к базе данных и заполнить ее;

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

 

 


Поделиться с друзьями:

Индивидуальные очистные сооружения: К классу индивидуальных очистных сооружений относят сооружения, пропускная способность которых...

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

Автоматическое растормаживание колес: Тормозные устройства колес предназначены для уменьше­ния длины пробега и улучшения маневрирования ВС при...

Таксономические единицы (категории) растений: Каждая система классификации состоит из определённых соподчиненных друг другу...



© cyberpedia.su 2017-2024 - Не является автором материалов. Исключительное право сохранено за автором текста.
Если вы не хотите, чтобы данный материал был у нас на сайте, перейдите по ссылке: Нарушение авторских прав. Мы поможем в написании вашей работы!

0.026 с.