Создание базы данных в Microsoft Excel. Создание базы данных: приемы и существующие решения

05.08.2019

Аннотация: Определяется процесс создания базы данных. Описываются операторы создания, изменения базы данных. Рассматривается возможность указания имени файла или нескольких файлов для хранения данных, размеров и местоположения файлов. Анализируются операторы создания, изменения, удаления пользовательских таблиц. Приводится описание параметров для объявления столбцов таблицы. Дается понятие и характеристика индексов. Рассматриваются операторы создания и изменения индексов. Определяется роль индексов в повышении эффективности выполнения операторов SQL.

База данных

Создание базы данных

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

Стандарт SQL оставляет за разработчиками СУБД право выбора конкретного механизма создания и уничтожения каталогов , однако механизм создания и удаления схем регламентируется посредством операторов CREATE SCHEMA и DROP SCHEMA . В стандарте также указано, что в рамках оператора создания схемы должна существовать возможность определения диапазона привилегий, доступных пользователям создаваемой схемы . Однако конкретные способы определения подобных привилегий в разных СУБД различаются.

В настоящее время операторы CREATE SCHEMA и DROP SCHEMA реализованы в очень немногих СУБД. В других реализациях, например, в СУБД MS SQL Server, используется оператор CREATE DATABASE .

Создание базы данных в среде MS SQL Server

Процесс создания базы данных в системе SQL-сервера состоит из двух этапов: сначала организуется сама база данных , а затем принадлежащий ей журнал транзакций . Информация размещается в соответствующих файлах, имеющих расширения *.mdf (для базы данных ) и *.ldf . (для журнала транзакций ). В файле базы данных записываются сведения об основных объектах (таблицах , индексах , представлениях и т.д.), а в файле журнала транзакций – о процессе работы с транзакциями (контроль целостности данных, состояния базы данных до и после выполнения транзакций).

Создание базы данных в системе SQL-сервер осуществляется командой CREATE DATABASE . Следует отметить, что процедура создания базы данных в SQL-сервере требует наличия прав администратора сервера.

<определение_базы_данных> ::= CREATE DATABASE имя_базы_данных [ <определение_файла> [,...n] ] [,<определение_группы> [,...n] ] ] [ LOG ON {<определение_файла>[,...n] } ] [ FOR LOAD | FOR ATTACH ]

Рассмотрим основные параметры представленного оператора.

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

При создании и изменении базы данных можно указать имя файла, который будет для нее создан, изменить имя, путь и исходный размер этого файла. Если в процессе использования базы данных планируется ее размещение на нескольких дисках, то можно создать так называемые вторичные файлы базы данных с расширением *.ndf . В этом случае основная информация о базе данных располагается в первичном (PRIMARY ) файле, а при нехватке для него свободного места добавляемая информация будет размещаться во вторичном файле . Подход, используемый в SQL-сервере, позволяет распределять содержимое базы данных по нескольким дисковым томам.

Параметр ON определяет список файлов на диске для размещения информации, хранящейся в базе данных .

Параметр PRIMARY определяет первичный файл . Если он опущен, то первичным является первый файл в списке.

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

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

<определение_файла>::= ([ NAME=логическое_имя_файла,] FILENAME="физическое_имя_файла" [,SIZE=размер_файла ] [,MAXSIZE={max_размер_файла |UNLIMITED } ] [, FILEGROWTH=величина_прироста ])[,...n]

Здесь логическое имя файла – это имя файла, под которым он будет опознаваться при выполнении различных SQL-команд.

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

Параметр SIZE определяет первоначальный размер файла; минимальный размер параметра – 512 Кб, если он не указан, по умолчанию принимается 1 Мб.

Параметр MAXSIZE определяет максимальный размер файла базы данных . При значении параметра UNLIMITED максимальный размер базы данных ограничивается свободным местом на диске.

При создании базы данных можно разрешить или запретить автоматический рост ее размера (это определяется параметром FILEGROWTH ) и указать приращение с помощью абсолютной величины в Мб или процентным соотношением. Значение может быть указано в килобайтах, мегабайтах, гигабайтах, терабайтах или процентах (%). Если указано число без суффикса МБ, КБ или %, то по умолчанию используется значение MБ. Если размер шага роста указан в процентах (%), размер увеличивается на заданную часть в процентах от размера файла. Указанный размер округляется до ближайших 64 КБ.

Дополнительные файлы могут быть включены в группу:

<определение_группы>::=FILEGROUP имя_группы_файлов <определение_файла>[,...n]

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

CREATE DATABASE Archive ON PRIMARY (NAME=Arch1, FILENAME=’c:\user\data\archdat1.mdf’, SIZE=100MB, MAXSIZE=200, FILEGROWTH=20), (NAME=Arch2, FILENAME=’c:\user\data\archdat2.mdf’, SIZE=100MB, MAXSIZE=200, FILEGROWTH=20), (NAME=Arch3, FILENAME=’c:\user\data\archdat3.mdf’, SIZE=100MB, MAXSIZE=200, FILEGROWTH=20) LOG ON (NAME=Archlog1, FILENAME=’c:\user\data\archlog1.ldf’, SIZE=100MB, MAXSIZE=200, FILEGROWTH=20), (NAME=Archlog2, FILENAME=’c:\user\data\archlog2.ldf’, SIZE=100MB, MAXSIZE=200, FILEGROWTH=20) Пример 3.1. Создание базы данных.

Технология работы создания однотабличной базы данных «Ателье» состоит из следующих этапов:

  • I этап. Создание таблицы.
  • II этап. Создание формы.
  • III этап. Создание запроса.
  • I V этап. Создание отчета.

Задание 1. Запустите программу Microsoft Access. В Области задач выберите параметр Новая база данных или щелкните по кнопке Создать. Создайте файл с именем Ателье (Ф. И. класс) и сохраните его в папке Мои документы . Появится окно базы данных (рис.1). Панель в левой части окна представляет виды объектов, с которыми работает программа. Прежде, чем начать непосредственную работу по созданию базы данных, остановимся на характеристиках основных объектов программы, с которыми мы будем работать.

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

Форма - объект Microsoft Access, предназначенный, в основном, для ввода данных. В форме можно разместить элементы управления, применяемые для ввода, изображения и изменения данных в полях таблиц.

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

Отчет - объект базы данных Microsoft Access, предназначенный для печати данных в удобном и наглядном виде.

Предположим, что создаваемая нами база данных Ателье содержит следующие сведения:

  • Фамилия, имя, отчество работника ателье
  • Фамилия, имя, отчество заказчика изделия, предназначенного для пошива
  • Дата приемки заказа
  • Наименования изделия, предназначенного для пошива
  • Стоимость заказа
  • Произведена ли предоплата за работу

Создание базы данных начнем с формирования таблицы в режиме Конструктора , т.к. в этом режиме можно самостоятельно задать имена полей, выбрать их тип и настроить свойства. Чтобы создать таблицу в режиме конструктора, нам остается только щелкнуть кнопку , т.к. в пункте Таблицы уже выделено необходимое нам Текстовое поле Создание таблицы в режиме Конструктора. Сразу появится окно (рис.2) для выбора режима создания новой таблицы. Выберите Конструктор . Нажмите кнопку ОК.

Рис.2. Окно Новая таблица

Появится окно Таблица (рис. 3), которая состоит из трех столбцов: Имя поля, Тип данных, Описание. Здесь можно задать имена полей, выбрать их тип и настроить свойства.

Имя поля - определяет имя поля в таблице. Это имя не должно совпадать с именем другого поля в этой таблице. Microsoft Access различает поля по их именам. После того как имя поля задано в режиме таблицы, оно является заголовком столбца таблицы.

Тип данных - определяет тип данных, сохраняемых в поле таблицы. В каждое поле допускается ввод данных только одного типа. Программа Microsoft Access предлагает несколько типов данных. Вот те, которые нам потребуются при работе:

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

Описание - текст, содержащий описание объекта, а также описание отдельных полей таблицы.

Задание 2. Создайте таблицу в режиме Конструктора с заданными именами полей, типами данных и описаниями в соответствии с Рис. 4.

Для сохранения таблицы нажмите кнопку Сохранить () или в Горизонтальном меню программы выберите пункт Файл - Сохранить как …. В появившемся окне Сохранение (рис. 5) присвойте имя таблице по своему усмотрению. На предложение Создать ключевое поле ответьте отказом.

Рис. 5. Окно сохранения таблицы

Перейдите к заполнению таблицы, выбрав в Горизонтальном меню пункт Вид - Режим таблицы (рис. 6).

Рис. 6. Выбор Режима таблицы

Задание 3. Заполните базу данных в виде таблицы (рис. 7) данными в соответствии с указанными полями (10-15 записей).

Примечание: В ателье работает всего пять человек.

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

Но гораздо удобнее заполнять таблицу с использованием такого объекта СУБД, как Форма , т.к. она является созданным пользователем графическим интерфейсом для ввода данных в базу.

Задание 4. Создайте форму и введите через нее еще 10-15 записей.

Для создания формы выберите объект Форма и щелкните кнопку . В открывшемся окне Новая форма выберите пункт Мастер форм (рис. 8).

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

Появится окно Создание форм для выбора внешнего вида. Выберите внешний вид формы «в один столбец» и нажмите кнопку Далее .

Появится окно Создание форм, предназначенное для выбора стиля. Введите стиль формы Стандартный (можно выбрать произвольно). Нажмите кнопку Далее.

Появится окно Создание форм для задания имени формы. Зададите имя формы (или оставьте предложенное). Нажмите кнопку Готово .

Появится окно формы для заполнения базы (рис. 9).

Рис. 9. Форма

По окончании ввода записей выполните команду пункта меню Записи - Обновить . Откройте таблицу в режиме Таблицы и убедитесь в пополнении базы данных введенными записями.

Приступая ко второй части нашей работы, мы имеем созданную нами в первой части базу данных «Ателье» (рис. 10):

Рис 10. База данных «Ателье» с отредактированной шириной столбцов

Теперь будем учиться работать с ней, т.е. извлекать, редактировать, добавлять информацию из нее.

Задание 5. Измените ширину столбцов так, чтобы вся база данных входила по размеру на экран (рис. 10).
Для этого должна быть необходимость, т.е. ширина столбцов не соответствует размеру введенных в них записей. Например, если столбец ФИО закройщика слишком узкий и текстовые записи в нем не просматриваются целиком, то в этом случае ширину каждого столбца можно изменить. Для этого можно воспользоваться одним из двух способов:

Способ 1. Установите указатель мыши в строке заголовка на правую границу столбца и переместите границу столбца.

Способ 2. Установите указатель мыши в строке заголовка на правую границу столбца и дважды щелкните левой клавишей мыши. В этом случае ширина столбца подгоняется под самую длинную запись столбца, учитывая заголовок. Изменение ширины строк выполняется аналогично изменению ширины столбцов

сортировать . Для этого необходимо указать поле (Дата, Стоимость и т.д. ) , по которому будет проводиться сортировка и вид сортировки (По возрастанию или По убыванию ).

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

Рис. 11. Фрагмент отсортированной таблицы

Чтобы отсортировать записи в таблице:

  1. Выделите столбец, по которому будет производиться сортировка
  2. Выберите в меню Записи команду Сортировка
  3. Выберите в подменю вид сортировки. Записи в таблице изменят местоположение.

Задание 6.

  1. Произведите сортировку поля ФИО заказчика по алфавиту
  2. Произведите сортировку поля Стоимость по убыванию

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

Попробуем создать запрос на выборку в режиме Конструктора:

1. Выберите пункт Запросы - Создать. Появится окно для выбора режима создания нового запроса (рис.12)

Рис.12. Окно Новый запрос

2. Выберите Конструктор - ОК. Появится два окна: Добавление таблицы. Запрос на выборку (рис.13)

Рис.13. Диалоговые окна для создания запроса

3. Выберите в списке таблицу «Ателье»

4. Нажмите кнопку Добавить . При этом в верхнюю часть бланка запроса на выборку автоматически заносятся поля выбранных таблиц. Нажмите кнопку Закрыть .

Обратите внимание, окно Добавление таблицы имеет три вкладки Таблицы, Запросы, Запросы и таблицы. Они говорят о том, что запрос не обязательно основывать только на таблицах. Если ранее уже был создан запрос, то новый запрос можно основывать и на нем. Окно Добавления таблицы закроется. В окне Запрос на выборку отражается бланк запроса, который состоит из двух панелей (рис. 14).

Рис. 14. Окно Запрос на выборку

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

Рис. 15. Пример заполнения запроса

Если щелкнуть на строке Сортировка , появится кнопка раскрывающегося списка, содержащего виды сортировки. Если назначить сортировку по какому-то полю, данные в результирующей таблице будут отсортированы по этому полю. В строке Условие отбора записывают тот критерий, по которому выбирают записи для включения в результирующую таблицу. По каждому полю можно создать свое условие отбора (логическое выражение). На Рис. 16 приведен пример запроса по полю Стоимость на наличие изделий, стоимость пошива которых составила или превысила 2500 рублей.

Выберите в меню Вид команду Режим таблицы. Появляется окно результирующей таблицы (рис. 16). Чтобы выйти из результирующей таблицы и вернуться к созданию запроса в бланке запроса по образцу, нужно выполнить команду Вид - Конструктор.

Рис. 16. Пример результирующей таблицы

Задание 7. Создайте запросы на выборку из таблицы Ателье, содержащую только данные о тех изделиях, которые были выполнены в течение одного дня, недели, двух недель.
Данные, хранящиеся в базе данных, можно представить в наглядной форме в виде Отчетов . Отчеты во многом похожи на формы и тоже позволяют получить результаты работы запросов, но только не на экране, а в виде распечатки на принтере. Таким образом, в результате работы отчета создается бумажный документ.

Задание 8. Создайте отчет из таблицы Ателье в режиме Мастер отчетов .

Чтобы создать отчет в режиме мастера:

1. Выберите пункт Отчеты - Создать . Появится окно для выбора режима создания нового отчета (рис.17)

Рис. 17. Окно Новый отчет

2. Выберите Мастер отчетов . Нажмите кнопку ОК .

3. Выберите поля ФИО закройщика, изделие, стоимость , т.е. те, которые будут включены в отчет (рис. 18). Нажмите кнопку Далее .

Рис. 18. Окно Выбор полей

4. Появится окно для изменения порядка следования полей. Добавьте уровни группировки, если это необходимо. Нажмите кнопку Далее.

5. Появится окно для задания порядка сортировки записей. Задайте в поле 1 (рис. 19) запись ФИО закройщика и сортировать По возрастанию, в поле 2 запись Стоимость и сортировать По убыванию , а в поле 3 Изделие и сортировать По убыванию. Нажмите кнопку Далее.

Рис. 19. Окно Создание отчетов для сортировки записей

6. Появится окно для выбора вида макета отчета (рис. 20). Выполните установку необходимых параметров. Нажмите кнопку Далее.

Рис. 20. Окно Создание отчетов для выбора вида макета

7. Появится окно для выбора стиля (рис.21). Выберите необходимый стиль. Нажмите кнопку Далее.

Рис. 21. Окно Создание отчетов для выбора стиля

8. Появится окно для задания имени отчета. Задайте имя отчета (или оставьте предложенное). Нажмите кнопку Готово.

На экране отобразится окно Отчета, фрагмент которого представлен на рис. 22.

Рис. 22. Пример окна отчета

Как и формы, отчеты состоят из разделов, а разделы могут содержать элементы управления. Программа СУБД Access позволяет отредактировать структуру готового отчета, открыв его в режиме Конструктора.

Для закрепления полученных знаний попробуйте самостоятельно создать Базу данных «Библиотека», содержащую поля:

  1. ФИО автора книги
  2. название книги
  3. год издания книги
  4. количество страниц
  5. стоимость книги
  6. кому выдана книга
  7. дата выдачи
  8. дата возврата
  9. отметка о возвращении (да/нет)

Пример создания базы данных "Поликлиника" в MS Office Access 2007

Как создать базу данных своих покупателей

Практический пример основных сведений для создания покупательской базы данных выглядит приблизительно так:

1) По горизонтали - перечисляются все возможные покупатели:

- физические лица предприниматели;

- общества с ограниченной ответственностью;

- акционерные общества;

- государственные структуры и т.п.

2) По вертикали - колонки могут иметь следующую информацию (слева направо):

- № п/п;

- юридическое название покупателя ;

- юридический адрес;

- название покупателя (т.е. название магазина или иной РТТ - розничной торговой точки);

- специализация РТТ (например: дет.питание, хлеб и выпечка, сеть быстр.пит., производство напитков и т.п.);

- адрес доставки товара;

- ФИО руководителя;

- контактное лицо (продавец или товаровед) для работы с товаром;

- контактное лицо (бухгалтер) для сверки и взаиморасчетов;

- телефоны для связи руководителя, e-mail и т.п.;

- телефоны для связи исполнителя;

- график работы покупателя (например: с 08.00 до 19.00, перерыв с 13.00 до 14.00);

- день и время, предпочтительные для согласования заказа (например: ПН. -в течение раб.дня или с 08.00 до 12.00);

- порядок согласования заказа (например: до 12.00, после 15.00, по месту, звонят сами, напомнить и т.п.);

- день и время, предпочтительные для поставки товара покупателю (например: СР. с 08.00 до 18.00);

- порядок расчета (например: оплата по факту, отсрочка платежа на 7дн.);

- форма расчета (например: наличный расчет, по ордеру, безналичный расчет, по чеку);

- дополнительная информация о покупателе (увлечение, день рождения и т.п.).

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

Желаю Вам успехов.

Базы данных на ПК развивались по направлению от настольных (desktop), или локальных приложений, когда реально с БД могло работать одно приложение, до систем коллективного доступа к БД.
Локальное приложение устанавливалось на единичном ПК; там же располагалась и база данных (БД), с которой работало данное приложение. Однако необходимость коллективной работы с одной и той же БД повлекло за собой перенос БД на сервер. Приложение, работающее с БД, располагалось также на сервере.

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

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

Локальные базы данных;

Архитектура "файл-сервер";

Архитектура "клиент-сервер";

Многозвенная архитектура.

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

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

В архитектуре "файл-сервер" вся тяжесть выполнения запросов к базе данных и управления целостностью базы данных ложится на приложение пользователя. База данных на сервере является пассивным источником данных.
Кардинальных различий с точки зрения архитектуры между однопользовательской архитектурой и архитектурой "файл-сервер" нет. И в том, и в ином случае в качестве СУБД применяются так называемые "персональные" (или "настольные", "локальные") СУБД, такие как paradox, dbase и пр. Сама база данных в этом случае представляет собой набор таблиц, индексных файлов, файлов полей комментариев (memo-полей) и пр., хранящихся в одном каталоге на диске в виде отдельных файлов.

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

Не оптимально расходуются ресурсы клиентского компьютера и сети; например, если в результате запроса мы должны получить 2 записи из таблицы объемом 10000 записей, все 10000 записей будут скопированы с файл-сервера на клиентский компьютер; в результате возрастает сетевой трафик и увеличиваются требования к аппаратным мощностям пользовательского компьютера.
В базе данных на файл-сервере гораздо проще вносить изменения в отдельные таблицы, минуя приложения, непосредственно из инструментальных средств (например, из утилиты database desktop фирмы borland для файлов paradox или dbase); подобная возможность облегчается тем обстоятельством, что, фактически, у локальных СУБД база данных – понятие более логическое, чем физическое, поскольку под базой данных понимается набор отдельных таблиц, сосуществующих в едином каталоге на диске. Все это позволяет говорить о низком уровне безопасности – как с точки зрения хищения и нанесения вреда, так и с точки зрения внесения ошибочных изменений.

Недостаточно развитый аппарат транзакций для локальных СУБД служит потенциальным источником ошибок как с точки зрения одновременного внесения изменений в одну и ту же запись, так и с точки зрения отката результатов серий объединенных по смыслу в единое целое операций над базой, когда некоторые из них завершились неуспешно, а некоторые — нет; это может нарушать ссылочную и смысловую целостность базы данных.
Недостатки настольных СУБД обычно проявляются не сразу, а лишь в процессе длительной эксплуатации, когда объем хранимых данных и число пользователей становятся достаточно велики – это приводит к снижению производительности приложений, использующих такие СУБД.

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

Архитектура "клиент-сервер" разделяет функции приложения пользователя (называемого клиентом) и сервера.
Приложение-клиент формирует запрос к серверу, на котором расположена БД, на структурном языке запросов sql, являющимся промышленным стандартом в мире реляционных БД. Удаленный сервер принимает запрос и переадресует его sql-серверу БД. sql-сервер – это специальная программа, управляющая удаленной базой данных. sql-сервер обеспечивают интерпретацию запроса, его выполнение в базе данных, формирование результата выполнения запроса и выдачу его приложению-клиенту. При этом ресурсы клиентского компьютера не участвуют в физическом выполнении запроса; клиентский компьютер лишь отсылает запрос к серверной БД и получает результат, после чего интерпретирует его необходимым образом и представляет пользователю.

Так как клиентскому приложению посылается результат выполнения запроса, по сети "путешествуют" только те данные, которые необходимы клиенту. В итоге снижается нагрузка на сеть. Поскольку выполнение запроса происходит там же, где хранятся данные (на сервере), нет необходимости в пересылке больших пакетов данных. Кроме того, sql-сервер, если это возможно, оптимизирует полученный запрос таким образом, чтобы он был выполнен в минимальное время с наименьшими накладными расходами. Всё это повышает быстродействие системы и снижает время ожидания результата запроса.

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

Функциями приложения-клиента являются:

Посылка к серверу запросов;

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

Реализация интерфейса пользователя.

sql-сервер должен быть загружен на момент принятия запроса клиента. Функциями сервера БД являются:

Прием запросов от приложений-клиентов, интерпретация запросов, выполнение запросов в БД, отправка результата выполнения запроса приложению-клиенту;

Управление целостностью БД, обеспечение системы безопасности, блокировка неверных действий приложений-клиентов;

Хранение бизнес-правил, часто используемых запросов в уже интерпретированном виде;

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

В архитектуре "клиент-сервер" используются так называемые "удаленные" (или "промышленные") СУБД. Промышленными они называются из-за того, что именно СУБД этого класса могут обеспечить работу информационных систем масштаба среднего и крупного предприятия, организации, банка. Локальные СУБД предназначены для однопользовательской работы или для обеспечения работы информационных систем, рассчитанных на небольшие группы пользователей.
К разряду промышленных СУБД принадлежат oracle, informix, sybase, ms sql server, db2, interbase и ряд других.

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

Механизмы доступа

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

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

В последнее время windows-версии клиентского программного обеспечения наиболее популярных серверных СУБД, в частности microsoft sql server, oracle, informix, содержат также СОМ-серверы, предоставляющие объекты для доступа к данным и метаданным.
Использование клиентского api (или клиентских СОМ-объектов) является наиболее очевидным способом манипуляции данными в приложении. Однако в этом случае созданное приложение сможет использовать данные только СУБД этого производителя, и замена ее на другую повлечет за собой переписывание значительной части кода клиентского приложения – клиентские api и объектные модели не подчиняются никаким стандартам и различны для различных СУБД.

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

Отметим, что достоинством универсальных механизмов является возможность применения одного и того же абстрактного api, а во многих случаях – СОМ-серверов, компонентов, классов для доступа к различным типам СУБД. Поэтому приложения, использующие универсальные механизмы доступа к данным, легко модифицировать, если необходима смена СУБД.
Наиболее популярными среди универсальных механизмов доступа к данным можно назвать следующие:

open database connectivity (odbc). ole db. activex data objects (ado). borland database engine (bde).

Универсальные механизмы odbc, ole db и ado фирмы microsoft представляют собой по существу промышленные стандарты. Что касается механизма доступа к данным bde фирмы borland, то он так и не стал промышленным стандартом, однако до недавнего времени применялся довольно широко, поскольку до выхода delphi 5 был практически единственным универмальным механизмом доступа к данным, поддерживаемым средствами разработки borland на уровне компонентов и классов

Что такое sql?

sql часто называют языком эсперанто для СУБД. Действительно, в мире нет другого языка для работы с базами данных (БД), который бы настолько широко использовался в программах. Первый стандарт sql появился в 1986 г. и к настоящему времени завоевал всеобщее признание. Его можно использовать даже при работе с не реляционными СУБД. В отличие от других программных средств, таких, как языки Си и Кобол, являющихся прерогативой программистов-профессионалов, sql применяется специалистами из самых разных областей. Программисты, администраторы СУБД, бизнес-аналитики — все они с успехом обрабатывают данные с помощью sql. Знание этого языка полезно всем, кому приходится иметь дело с БД.

sql — это специализированный непроцедурный язык, позволяющий описывать данные, осуществлять выборку и обработку информации из реляционных СУБД. Специализированность означает, что sql предназначен лишь для работы с БД; нельзя создать полноценную прикладную систему только средствами этого языка — для этого потребуется использовать другие языки, в которые можно встраивать sql-команды. Поэтому sql еще называют вспомогательным языковым средством для обработки данных. Вспомогательный язык используется только в комплексе с другими языками.

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

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

sql позволяет не только извлекать данные, но и определять структуру данных, добавлять и удалять данные, ограничивать или предоставлять доступ к данным, поддерживать ссылочную целостность. sql сам по себе не является ни СУБД, ни отдельным продуктом. Это – язык, применяемый для взаимодействия с СУБД и являющийся в определенном смысле ее неотъемлемой частью.

MySQL - Система Управления Базами Данных (СУБД). Основное отличие от всех остальных СУБД это то, что она является бесплатной. В силу того, что MySQL бесплатна, она…

Дельфины всегда вызывали доверие у людей. Они ассоциируются у нас с добротой и радостью. Хоть дельфин и является символом MySQL , но это никак не объясняет той популярности, которой она пользуется во всем мире:

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

Особенности MySQL

Процедура создания базы данных MySQL ничем не отличается от других СУБД . Да и ее бесплатность тоже едва ли является основной причиной популярности данной системы. Например, SQL Server от Microsoft . В каждой версии данного продукта выходит его бесплатная редакция, и с довольно неплохими техническими характеристиками.

Особенности СУБД MySQL :

  • Чаще всего используется в качестве удаленного сервера;
  • Включает в себя большое количество типов таблиц;
  • Поставляется со специальным типом EXAMPLE , показывающим принцип создания новых таблиц;
  • Высокая степень масштабируемости за счет поддержки большинства популярных платформ;
  • Открытый исходный код – благодаря этому данная СУБД постоянно совершенствуется и модернизируется множеством разработчиков по всему миру;
  • Создано большое количество API , обеспечивающих взаимосвязь MySQL c основной частью всех программных языков;
  • Максимальный размер файла таблицы базы данных ограничивается лишь возможностями используемой операционной системы.

У ближайшего конкурента MySQL системы MS SQL Server в бесплатной редакции Express ограничение на размер базы данных составляет 10 ГБ.


  • Последняя версия СУБД 5.7.5m15 (тестовая ) вышла в сентябре 2014.

Создание базы данных MySQL

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

Среда PHPMyAdmin является одной из самых популярных оболочек для работы с MySQL . Ее интерфейс во многом облегчает администрирование баз данных.

Для создания базы данных MySQL через PHPMyAdmin делаем следующее:

  • Заходим в оболочку;
  • Переходим на вкладку «Базы данных »;
  • В первое поле вводим название создаваемой базы данных, а из выпадающего списка выбираем нужную кодировку. В нашем случае это utf8_genegal_ci .

Длина имени базы данных не должна превышать 64 символа.

  • Затем нажимаем на кнопку «Создать »:


  • После этого имя созданной БД MySQL должно появиться в списках слева и внизу:


Теперь создадим в нашей базе данных первую таблицу. Делаем следующее:

  • В списке слева находим имя нашей базы данных и нажимаем на него:


  • В следующем окне вводим название таблицы и задаем количество столбцов;
  • Затем нажимаем на кнопку «Ok ».

То же самое можно сделать, нажав на ссылку «Создать таблицу» сразу под списком баз данных слева, но тогда в следующем окне выведется заготовка без имени и с четырьмя столбцами.

  • Следующим шагом задаем структуру нашей таблицы. Прописываем имена и типы данных, которые будут храниться в столбцах таблицы;
  • После этого нажимаем на кнопку «Сохранить »:


  • Таблица нашей БД MySQL создана и готова для заполнения данными:


Но это не единственный способ, как можно создать базу данных в PHPMyAdmin . Аналогичный эффект можно получить, если воспользоваться SQL запросом. Для этого применяется команда CREATE . Ее синтаксис:

CREATE DATABASE db_name ;

Аргументы:

  • IF NOT EXISTS – служит для отслеживания уникальности имени базы данных. Если не указывать этот параметр, то в случае создания базы с одинаковым названием может возникнуть ошибка выполнения запроса;
  • db_name – указывается имя создаваемой базы данных;
  • CHARACTER SET charset – устанавливается кодировка базы данных. Если не указано, то используется значение по умолчанию;
  • COLLATE collation – задается порядок сортировки данных. Необязательный параметр.

Теперь создадим базу данных с помощью SQL запроса через оболочку PHPMyAdmin :

  • Переходим на вкладку «SQL »;
  • В появившемся окне редактора вводим запрос на создание базы данных;
  • Или жмем на иконку «Окно запроса ». Она находится слева над списком баз данных:


  • Вводим текст запроса:

CREATE DATABASE `my_db`;

  • Внизу нажимаем на «Ok »:


  • После этого название нашей базы данных отобразится в списке слева:


Для удаления sql базы данных используйте команду DROP DATABASE «my_db» .

  • Запрос для создания базы данных с указанием необязательных параметров будет выглядеть следующим образом:

CREATE DATABASE `my_db` CHARACTER SET utf8 COLLATE utf8_general_ci;


Настройка резервного копирования базы данных

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

Настраиваем резервное копирование базы данных в PHPMyAdmin . Порядок действий:

  • В списке слева выбираем нужную нам базу данных;
  • Жмем на вкладку «Экспорт »;
  • Нажимаем «Ок ».


Если в разделе «Способ экспорта » выбрать значение «Обычный », то перед вами раскроется большое окно с множеством параметров для настройки:


Теперь попытаемся восстановить сохраненную копию базы. Но для начала удалим уже существующий экземпляр. Переходим во вкладку «Операции » и нажимаем ссылку «Удалить базу данных »:


Для восстановления базы MySQL в PHPMyAdmin переходим на вкладку «Импорт ». В разделе «Импортируемый файл » в зависимости от места, где вы сохраняли копию базы данных, выбираем источник. После этого жмем на кнопку «ОК », расположенную в нижней части экрана:


Иногда после внесения каких-либо изменений требуется восстановить не всю базу данных, а лишь определенную таблицу. Такая возможность также реализована в PHPMyAdmin . Для этого на странице нужной таблицы внизу ее структуры из выпадающего списка выбираем соответствующий пункт и внизу жмем на «Ок »:


Сжатие баз данных в MySQL

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

Также для уменьшения размеров базы данных рекомендуется сохранять ее резервные копии в виде архивов. Сжатие (компрессия ) резервных копий настраивается в одноименном пункте на вкладке «Экспорт » в разделе «Вывод »:


Еще одним способом уменьшения размера БД MySQL является следующий набор действий:

  • Создание дампа (копии ) через командную строку с использованием команды mysqldump ;
  • Удаление всех баз данных;
  • Остановка всех службы MySQL ;

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

В этом материале расскажу о том, какие действия необходимо предпринять любому владельцу ПК, если ему для каких-то целей понадобилось установить mysql, создать базу данных, и попробовать свои силы в управлении современной БД. Также она будет интересна тем, кто хочет знать, как заставить работать современную СУБД.

Поскольку, как я уже сказал, для того чтобы у вас все получилось, необходимы базовые знания, без которых создать базу данных mysql не получится, соответственно будем считать, что вы знаете, что такое БД, таблица, запросы в базу и вас не ставит в тупик аббревиатура SQL. Также будем считать, что у вас установлен и настроен сервер Apache.

Итак, если все необходимое у вас в наличии, и желание узнать, как создать базу данных mysql, еще не пропало, то начнем с того, что запустим Apache. Для запуска его пройдем по пути C:\WebServers\etc и запустим файл Run. Если Апач корректно, без ошибок запустился, то в правом нижнем углу к имеющимся иконкам добавится красное перо.

Теперь необходимо убедиться, что вебсервер работает, вводим в браузере адрес http://localhost/ В ответ вы должны получить текст «Ура, заработало!», если именно его вы видите на мониторе, значит с Апачем полный порядок.

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

Создание Базы данных

Для того чтобы создать базу, в поле «Создать новую БД» необходимо ввести название, например, MyBase. Теперь нажимаем кнопку «Создать», и phpMyAdmin создаст новую БД.

Создание таблиц

Создавать таблицы достаточно просто, вам следует выбрать базу (MyBase). В главном окошке предложат ввести имя для таблицы (попробуйте вписать название DataStudent), а также потребуется ввести количество полей (поставьте цифру 5). Выбирая сколько у вас будет полей, не забудьте, что одно поле уходит под ключ (ID). Если вы все ввели правильно - то нажмите кнопку «Enter».

Теперь перед вами раскроется дополнительная форма создания таблиц. В ней вы можете задать поля, назначить для каждого из них, назвать колонки, определить их максимальные размеры. Как правило, первое поле является ключевым. Вписываем в него название «ID», теперь надо определиться с типом данных, которые будут вводится для этой колонки. Поскольку в MySQL такого типа, как счетчик, не существует, следует выбрать Int, в атрибутах ставим галочку unsigned. Затем переходим в дополнительные настройки и выставляем там Auto-increment, для того, чтобы каждый раз при введении нового значения, это поле самостоятельно увеличивало свое значение на единицу.

Таким образом, у вас получился типичный счетчик. Пора двигаться к следующей группе настроек - RadioButton. Здесь выберем значение «первичный», если оно активировано - то наше поле становится первичным ключем.

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

Двигаемся дальше, теперь нам необходимо определить значения и дать названия остальным колонкам нашей таблицы. Пусть это будут Фамилия, имя, отчество и, допустим, оценка: «Fam», «Name», «Otch», «Ocenka», осталось назначить тип данных - varChar, ведь в этих полях будет храниться информация в виде строки. Не забудьте выставить и максимальную длину полей, логичным будет ограничить ее значением в 30 символов. Проверьте все введенные данные и полюбуйтесь на созданную вами таблицу. В ней должен быть набор полей с названиями «ID», «Fam», «Name», «Otch», «Ocenka».

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