Информация о музыкальных семплах

Автор работы: Пользователь скрыл имя, 12 Сентября 2013 в 22:13, курсовая работа

Краткое описание

MySQL разработал Михаэль Видениус (Michael Widenius). MySQL является относительно небольшой и быстрой реляционной СУБД основанной на традициях Hughes Technologies Mini SQL (mSQL). SQL - это сокращение от Structured Query Language (структурированный язык запросов). SQL создан для работы с реляционными базами данных. Он позволяет пользователям взаимодействовать с базами данных (просматривать, искать, добавлять и управлять данными).

Содержание

Введение 3
Описание целевой СУБД 3
Концептуальная модель 7
Инфологическая модель 8
Физическая модель 8
Программное меню 8
Исходные тексты программ 13
Список литературы 24

Вложенные файлы: 1 файл

Курсовой проэкт_БД_Информация о семплах.doc

— 2.61 Мб (Скачать файл)

ФЕДЕРАЛЬНОЕ АГЕНТСТВО  ПО ОБРАЗОВАНИЮ

Государственное образовательное учреждение высшего  профессионального образования

СЕВЕРО-ЗАПАДНЫЙ ГОСУДАРСТВЕННЫЙ ЗАОЧНЫЙ ТЕХНИЧЕСКИЙ  УНИВЕРСИТЕТ

Институт информационных систем и вычислительной техники

Кафедра ВМКСС

 

 

 

 

 

курсовой проект

 

по дисциплине «Базы данных»

Тема: «Информация о  музыкальных семплах»

 

 

 

 

 

Выполнил:

Шифр             

Группа       

Дата защиты _____________________________

 

Оценка ________________

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Санкт-Петербург

2010 г.

Оглавление

Введение  3

Описание целевой  СУБД 3

Концептуальная  модель 7

Инфологическая  модель 8

Физическая  модель 8

Программное меню 8

Исходные тексты программ 13

Список литературы 24

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

  1. Введение

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

  1. Описание целевой СУБД:

MySQL разработал Михаэль Видениус (Michael Widenius). MySQL является относительно небольшой и быстрой реляционной СУБД основанной на традициях Hughes Technologies Mini SQL (mSQL). SQL - это сокращение от Structured Query Language (структурированный язык запросов). SQL создан для работы с реляционными базами данных. Он позволяет пользователям взаимодействовать с базами данных (просматривать, искать, добавлять и управлять данными).

Чем хорош MySQL?

Основные приятные стороны пакета MySQL:

Многопоточность. Поддержка нескольких одновременных запросов.

Оптимизация связей с присоединением многих данных за один проход.

Записи фиксированной и переменной длины.

ODBC драйвер в комплекте с исходником

Гибкая система привилегий и  паролей.

До 16 ключей в таблице. Каждый ключ может иметь до 15 полей.

Поддержка ключевых полей и специальных  полей в операторе CREATE.

Поддержка чисел длинной от 1 до 4 байт (ints, float, double, fixed), строк переменной длины и меток времени.

Интерфейс с языками C и perl.

Основанная на потоках, быстрая система памяти.

Утилита проверки и ремонта таблицы.

Все данные хранятся в формате ISO8859_1.

Все операции работы со строками не обращают внимания на регистр символов в обрабатываемых строках.

Псевдонимы применимы как к  таблицам, так и к отдельным  колонкам в таблице.

Все поля имеют значение по умолчанию. INSERT можно использовать на любом  подмножестве полей.

Легкость управления таблицей, включая  добавление и удаление ключей и полей.

Несмотря на то, что версия 4.0 является устаревшей, она всё ещё имеет  значительное распространение. Основные возможности этой версии:

  • Практически полная реализация ANSI SQL-99, плюс расширения;
  • Межплатформенная совместимость;
  • Независимые типы таблиц (MyISAM для быстрого чтения, InnoDB для транзакций и ссылочной целостности);
  • Транзакции;
  • Поддержка SSL;
  • Кеширование запросов;
  • Репликация: один головной сервер на одного подчинённого, много подчинённых на одного головного;
  • Полнотекстовая индексация и поиск с использованием типа таблиц MyISAM;
  • Внедрённая библиотека базы данных;
  • Поддержка Юникода (UTF-8);
  • Таблицы InnoDB обеспечивают соответствие требованиям ACID;
  • Встроенный сервер, позволяющий включать MySQL в автономные приложения.

MySQL 4.1

Рекомендованной версией на 2005 год является MySQL 4.1 вышла 27 октября 2004. Она содержит следующие нововведения:

  • Вложенные запросы и производные таблицы;
  • Новая система кодировок и сортировок;
  • Более быстрый и гибкий протокол клиент-сервер с поддержкой подготовленных запросов, обеспечивающий их оптимальное исполнение;
  • Новая программа установки и настройки для Microsoft Windows и GNU/Linux;
  • Защищённые через OpenSSL соединения клиент-сервер;
  • Высоко-оптимизированная библиотека, которая может быть использована в сторонних программах;
  • Полноценная поддержка Юникода (UTF-8 и UCS2);
  • Стандартные пространственные типы данных GIS, для хранения географической информации;
  • Улучшенный полнотекстовый поиск и система помощи.

MySQL 5.0

Версия MySQL 5.0 вышла 24 октября 2005 года, в этой версии значительно расширена  функциональность, которая ставит MySQL в один ряд с коммерческими СУБД. Если раньше СУБД MySQL обвиняли в недостаточной поддержке стандарта SQL, то с появлением пятой версии этой популярной базы данных, появилась практически полная поддержка стандарта SQL. MySQL 5.0 содержит следующие нововведения:

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

 MySQL 5.1

Версия MySQL 5.1 продолжает путь к стандарту SQL:2003. MySQL 5.1 содержит следующие нововведения [6] [7]:

  • сегментирование — возможность разбить одну большую таблицу на несколько частей, размещенных в разных файловых системах, основываясь на определенной пользователем функции. При определенных условиях это может дать серьезное увеличение производительности и, кроме того, облегчает масштабирование таблиц.
  • изменено поведение ряда операторов, для обеспечения большей совместимости со стандартом SQL2003;
  • построчная репликация (row-based репликация), при которой в бинарный лог будет записываться только информация о реально измененных строках таблицы вместо оригинального (и, возможно, медленного) текста запроса. Построчную репликацию можно использовать только для определенных типов sql-запросов, в терминах MySQL - смешанная (mixed) репликация;
  • встроенный планировщик периодически запускаемых работ. По синтаксису добавление задачи похоже на добавление триггера к таблице, по идеологии - на crontab;
  • дополнительный набор функций для обработки XML, реализация поддержки XPath;
  • новые средства диагностики проблем и утилиты для анализа производительности. Расширены возможности по управлению содержимым лог-файлов, логи теперь могут быть сохранены и в таблицах general_log и slow_log. Утилита mysqlslap позволяет провести нагрузочное тестирование БД с записью времени реакции на каждый запрос;
  • для упрощения операции обновления подготовлена утилита mysql_upgrade, которая выполнит проверку всех существующих таблиц на предмет совместимости с новой версией, и при необходимости выполнит надлежащие корректировки;
  • MySQL Cluster отныне выпущен как отдельный продукт, базирующийся на MySQL 5.1 и хранилище NDBCLUSTER;
  • значительные изменения в работе MySQL Cluster, такие, как, например, возможность хранения табличных данных на диске;
  • возврат к использованию встроенной библиотеки libmysqld, отсутствовавшей в MySQL 5.0;
  • API для плагинов, которое позволяет загружать сторонние модули, расширяющие функциональность (например, полнотекстовый поиск), без перезапуска сервера.
  • реализация парсера полнотекстового поиска в виде plug-in;
  • новый тип таблиц Maria (устойчивый к сбоям клон MyISAM);

Технические Характеристики

Максимальные размеры таблиц

MySQL 3.22 : до 4 Гб

MySQL 3.23+ : До 8 миллионов терабайт. (2 ^ 63)

При этом необходимо учитывать тот  факт, что размер таблицы в новых  версиях ограничен лишь предельным размером файла в файловой системе  вашей ОС. Например в NTFS этот размер теоретически может быть до 32 эксабайт.

  • Производительность

СУБД mSQL, благодаря отсутствию затрат дополнительных ресурсов на создание потоков, а также за счет компактности синтаксического анализатора, небольшого количества функций и упрощенной системы безопасности, должна выигрывать в скорости выполнения:

    • тестов на выполнение циклов соединение-отсоединение, при каждом соединении выполняющих какой-нибудь простой запрос
    • операций INSERT над простыми таблицами, содержащими небольшое количество столбцов и ключей
    • CREATE TABLE и DROP TABLE
    • операций SELECT чего-нибудь, кроме индексов (очень просто выполняется просмотр таблицы)

Поскольку такие операции очень  просты, при больших затратах ресурсов на начальном этапе выиграть в  скорости их выполнения достаточно сложно. Поэтому лучшие результаты MySQL может  показать лишь после установки соединения. С другой стороны, MySQL значительно превосходит mSQL (и большинство других реализаций SQL) при:

    • выполнении сложных операций SELECT.
    • загрузке объемных результатов.
    • работе с таблицами, имеющими строки переменной длины, так как обработка данных в MySQL реализована более эффективно и в нем допускается создание индексов для столбцов с типом VARCHAR.
    • обработке таблиц, содержащих большое количество столбцов.
    • обработке таблиц с длинными записями.
    • выполнении операций SELECT с несколькими выражениями.
    • выполнении операций SELECT над объемными таблицами.
    • одновременной работе с несколькими соединениями.
    • связывании таблиц.
    • ORDER BY и GROUP BY.
    • DISTINCT.
    • работе со столбцами с типами TEXT или BLOB.
  • Возможности SQL
    • GROUP BY и HAVING. В mSQL функция GROUP BY отсутствует вовсе. В MySQL Server же GROUP BY имеется и работает как с HAVING, так и со следующими функциями: COUNT(), AVG(), MIN(), MAX(), SUM()и STD(). Работа оператора COUNT(*) оптимизирована в расчете на быстрый возврат результатов, если оператор SELECT берет данные из одной таблицы, не используя никаких других столбцов и выражения WHERE. Функции MIN() и MAX() могут принимать строковые аргументы.
    • INSERT и UPDATE с вычислениями. MySQL может выполнять вычисления непосредственно в теле вызова INSERT или UPDATE. Вот пример:
    • mysql> UPDATE SET x=x*10+y WHERE x<20;
    • Псевдонимы. В MySQL имеется возможность определения псевдонимов столбцов.
    • Квалификация имен столбцов. В MySQL, при условии уникальности имени столбца среди таблиц, использующихся при выполнении запроса, нет необходимости приводить его полный квалификатор.
    • SELECT с функциями. Функций в MySQL много (даже слишком много, чтобы их можно было перечислить здесь.

Чаще всего база данных содержит одну или несколько таблиц ;-). Каждая таблица имеет определенное имя (например, "people" или "cars"). Таблицы содержат поля (колонки) с записями(строки). Все действия в базе данных осуществляется с помощью SQL запросов.

Например  следующий SQL запрос выведет все  записи из таблицы "people" :

SELECT * from people;

(Для SQLя не важен регистр  символов, заглавные, прописные,  все равны

(SELECT и select - одно и тоже), также  важно помнить что MySQL

требует чтобы каждый запрос заканчивался символом ";")

Для более легкого запоминания  и понимания можно запросы разделить на

3 типа: DML(Data Manipulation Language) - управление  данными(УД),

и определение(вид) данных DDL(Data Definition Language)(ОД).

И еще пожалуй системные запросы(СЗ)DCL (Data Control Language).Также необходимо всегда иметь под рукой информацию о том какие типы данных

применяются в таблицах MySQL. И в конце концов определить пользователей и их права.При необходимости написания скриптов, можно посмотреть 2 простых примера

К УД можно отнести:

SELECT - извлечение(выборка) данных  из БД

UPDATE - обновление данных в БД

DELETE - удаление данных из БД

INSERT INTO - вставка(заполнение) новыми  данными БД

 

 

 

 

 

 

 

 

 

 

 

 

 

 

  1. Концептуальная модель БД.

База данных “Tracks” представляет из себя 3 взаимосвязанные таблицы, содержащие следующую информацию:

Таблица 1: Main – таблица, отображающая основные параметры семпла. Содержит 4 поля:

- id - ключ

- Name – Название семпла

- Auth – Автор.

- Bpm – Скорость (ударов/мин.)

Для создания таблицы используется команда:

"CREATE TABLE $TableName (id INT UNSIGNED NOT NULL AUTO_INCREMENT PRIMARY KEY,

Name  VARCHAR(30),

                                        Auth VARCHAR(30),

                                        Date VARCHAR(30),

        Bpm VARCHAR(14))";

 

id

Name

Auth

Bpm

       

Рис. 1

 

Таблица 2: Other – отображает два дополнительных параметра семпла плюс id:

- id

- Vol – Уровень громкости семпла (Volume)

- Pan – Процент расположения в панораме («-число» - ближе к левому динамику «+число» - к правому, предел – 100)

id

Vol

Pan

     

Рис. 2

Для создания таблицы используется команда:

"CREATE TABLE $TableName (id INT UNSIGNED NOT NULL AUTO_INCREMENT PRIMARY KEY,

                                 Vol VARCHAR(9),

Информация о работе Информация о музыкальных семплах