Пример создания и работы с “*.mdf” файлом локальной базы данных Microsoft SQL Server
В данной теме рассматривается подключение (создание) файла базы данных к локальному екземпляру Microsoft SQL Server с помощью поставщика данных .NET Framework для SQL Server.
Содержание
Поиск на других ресурсах:
Условие задачи
Создать базу данных с именем “Education”. В базе данных создать две таблицы, которые связаны между собой по некоторому полю.
Структура первой таблицы «Student».
Структура второй таблицы “Session”.
Таблицы должны быть связаны между собой по полю Num_book.
⇑
Выполнение
1. Загрузить MS Visual Studio.
⇑
2. Активировать окно Server Explorer.
Файл базы данных с расширением “*.mdf” относится к серверу реляционных баз данных Microsoft SQL Server. Файл содержит непосредственно базу данных.
При создании “*.mdf” файла базы данных также создается файл с расширением “*.ldf”, который содержит журнал транзакций.
Перед созданием базы данных, нужно активировать утилиту Server Explorer. Для этого, в MS Visual Studio нужно вызвать (рисунок 1)
View -> Server Explorer
⇑
3. Команда “Add Connection…”.
Для вызова окна создания базы данных в формате mdf нужно вызвать команду Add Connection. Команда Add Connection вызывается двумя способами. Первый способ – это вызов контекстного меню (клик правой кнопкой мыши) на элементе ”Data Connection…” (рисунок 2).
Рис. 2. Вызов команды Add Connection из контекстного меню
Второй способ – это вызов команды “Connect to Database…” из меню Tools главного меню Microsoft Visual Studio. Также эту команду можно вызвать из Server Explorer кликом на соответствующей кнопке (рисунок 3).
Рис. 3. Команда “Connect to Database…”
⇑
4. Окно “Add Connection”.
В результате выполнения предыдущей команды откроется окно “Add Connection” (рисунок 4). В этом окне пользователь имеет возможность:
- выбрать источник данных (Data source);
- создать новый или выбрать уже существующий файл базы данных (Database file name);
- если нужно, задать пароль входа в базу данных;
- проверить соединение с базой данных (кнопка Test Connection);
- настроить другие параметры вызовом кнопки «Advanced».
Рис. 4. Окно “Add Connection”
В качестве источника данных Microsoft Visual Studio предлагает базу данных Microsoft Access. Для создания “*.mdf” файла базы данных MS SQL Server нужно изменить источник данных выбором кнопки “Change…”.
В результате откроется второе окно “Change Data Source” (рисунок 5). В этом окне выбирается источник данных и провайдер.
Система MS Visual Studio предлагает следующие виды источников данных:
- база данных Microsoft Access, которая содержится в файле формата “*.mdb”;
- база данных, которая поддерживает доступ с помощью драйвера ODBC;
- база данных типа Microsoft SQL Server, в том числе и локальный сервер SQLEXPRESS;
- база данных “Microsoft SQL Server Compact 3.5”, которая размещается в файлах с расширением “*.sdf”;
- база данных “Microsoft SQL Server Database File”, которая содержится в файлах формата “*.mdf”;
- база данных Oracle.
Для создания “*.mdf” файла базы данных Microsoft SQL Server нужно выбрать источник данных “Microsoft SQL Server Database File” как зображено на рисунке 5.
Рис. 5. Окно “Change Data Source”
После изменения источника данных в окне Add Connection в поле “Database file name (new or existing):” нужно ввести имя создаваемой базы данных. Если нужно выбрать “*.mdf” файл уже существующей базы данных, то для этого предназначена кнопка “Browse…”.
В нашем случае нужно ввести название базы данных “Education”, как изображено на рисунке 6.
Рис. 6. Создание базы данных Education
После подтверждения на “OK”, система выведет окно, как изображено на рисунке 7. Предлагается системная папка по умолчанию:
C:\Users\Sasha\Documents\Education.mdf
Если нужно установить другую папку, для этого используется кнопка “Browse…” из окна “Add Connection”.
Рис. 7. Предложение создать файл “Education.mdf”
После подтверждения, база данных Education.mdf будет создана (рисунок 8).
Рис. 8. Новосозданная база данных “Education.mdf”
⇑
5. Создание таблицы Student.
На данный момент база данных Education абсолютно пустая и не содержит никаких объектов (таблиц, сохраненных процедур, представлений и т.д.).
Чтобы создать таблицу, нужно вызвать контекстное меню (клик правой кнопкой мышки) и выбрать команду “Add New Table” (рисунок 9).
Рис. 9. Команда добавления новой таблицы
Существует и другой вариант добавления таблицы базы данных с помощью команд меню Data (рисунок 10):
Data -> Add New -> Table
Рис. 10. Альтернативный вариант добавления новой таблицы
В результате откроется окно добавления таблицы, которое содержит три столбца (рисунок 11). В первом столбце “Column Name” нужно ввести название соответствующего поля таблицы базы данных. Во втором столбце “Data Type” нужно ввести тип данных этого поля. В третьем столбце “Allow Nulls” указывается опция о возможности отсутствия данных в поле.
Рис. 11. Окно создания новой таблицы
С помощью редактора таблиц нужно сформировать таблицу Student как изображено на рисунке 12. Имя таблицы нужно задать при ее закрытии.
В редакторе таблиц можно задавать свойства полей в окне Column Properties. Для того, чтобы задать длину строки (nvchar) в символах, в окне Column Properties есть свойство Length. По умолчанию значения этого свойства равно 10.
Рис. 12. Таблица Student
Следующим шагом нужно задать ключевое поле. Это осуществляется вызовом команды “Set Primary Key” из контекстного меню поля Num_book (рисунок 13). С помощью ключевого поля будут установлены связи между таблицами. В нашем случае ключевым полем есть номер зачетной книжки.
Рис. 13. Задание ключевого поля
После установки первичного ключа окно таблицы будет иметь вид как изображено на рисунке 14.
Рис. 14. Таблица Student после окончательного формирования
Теперь можно закрыть таблицу. В окне сохранения таблицы нужно задать ее имя – «Student» (рисунок 15).
Рис. 15. Ввод имени таблицы Student
⇑
6. Создание таблицы Session.
По образцу создания таблицы Student создается таблица Session.
На рисунке 16 изображен вид таблицы Session после окончательного формирования. Первичный ключ (Primary Key) устанавливается в поле Num_book. Имя таблицы задается Session.
Рис. 16. Таблица Session
После выполненных действий, в окне Server Explorer будут отображаться две таблицы Student и Session.
Таким образом, в базу данных можно добавлять любое количество таблиц.
⇑
7. Редактирование структуры таблиц.
Бывают случаи, когда нужно изменить структуру таблицы базы данных.
Для того, чтобы вносить изменения в таблицы базы данных в MS Visual Studio, сначала нужно снять опцию “Prevent Saving changes that require table re-creation” как показано на рисунке 17. Иначе, MS Visual Studio будет блокировать внесения изменений в ранее созданную таблицу. Окно Options, показанное на рисунке 17 вызывается из меню Tools в такой последовательности:
Tools -> Options -> Database Tools -> Table and Database Designers
Рис. 17. Опция “Prevent Saving changes that require table re-creation”
После настройки можно изменять структуру таблицы. Для этого используется команда “Open Table Definition” (рисунок 18) из контекстного меню, которая вызывается для выбранной таблицы (правый клик мышкой).
Рис. 18. Вызов команды “Open Table Definition”
Также эта команда размещается в меню Data:
Data -> Open Table Definition
Предварительно таблицу нужно выделить.
⇑
8. Установление связей между таблицами.
В соответствии с условием задачи, таблицы связаны между собою по полю Num_book.
Чтобы создать связь между таблицами, сначала нужно (рисунок 19):
- выделить объект Database Diagram;
- выбрать команду Add New Diagram из контекстного меню (или из меню Data);
- подтвердить создание нового объекта-диаграммы (рисунок 20).
Рис. 19. Вызов команды добавления новой диаграммы
Рис. 20. Сообщение о создании объекта-диаграммы
В результате откроется окно добавления новой диаграммы Add Table (рисунок 21). В этом окне нужно выбрать последовательно две таблицы Session и Student и нажать кнопку Add.
Рис. 21. Окно добавления таблиц к диаграмме
В результате будет создан новый объект с двумя таблицами Student и Session (рис. 22).
Рис. 22. Таблицы Student и Session после добавления их к диаграмме
Чтобы начать устанавливать отношение между таблицами, надо сделать клик на поле Num_book таблицы Student, а потом (не отпуская кнопку мышки) перетянуть его на поле Num_book таблицы Session.
В результате последовательно откроются два окна: Tables and Columns (рис. 23) и Foreign Key Relationship (рис. 24), в которых нужно оставить все как есть и подтвердить свой выбор на OK.
В окне Tables and Columns задается название отношения (FK_Session_Student) и названия родительской (Student) и дочерней таблиц.
Рис. 23. Окно Tables and Columns
Рис. 24. Окно настройки свойств отношения
После выполненных действий будет установлено отношение между таблицами (рисунок 25).
Рис. 25. Отношение между таблицами Student и Session
Сохранение диаграммы осуществляется точно также как и сохранение таблицы. Имя диаграммы нужно выбрать на свое усмотрение (например Diagram1).
После задания имени диаграммы откроется окно Save, в котором нужно подтвердить свой выбор (рисунок 26).
Рис. 26. Подтверждение сохранения изменений в таблицах
⇑
9. Внесение данных в таблицы.
Система Microsoft Visual Studio разрешает непосредственно вносить данные в таблицы базы данных.
В нашем случае, при установлении связи (рис. 22) первичной (Primary Key Table) выбрана таблица Student. Поэтому, сначала нужно вносить данные в ячейки именно этой таблицы. Если попробовать сначала внести данные в таблицу Session, то система заблокирует такой ввод с выводом соответствующего сообщения.
Чтобы вызвать режим ввода данных в таблицу Student, нужно вызвать команду Show Table Data из контекстного меню (клик правой кнопкой мышки) или с меню Data (рис. 27).
Рис. 27. Команда Show Table Data
Откроется окно, в котором нужно ввести входные данные (рис. 28).
Рис. 28. Ввод данных в таблице Student
После внесения данных в таблицу Student нужно внести данные в таблицу Session.
При внесении данных в поле Num_book таблицы Session нужно вводить точно такие же значения, которые введены в поле Num_book таблицы Student (поскольку эти поля связаны между собой).
Например, если в поле Num_book таблицы Student введены значения “1134”, “1135”, “1221” (см. рис. 28), то следует вводить именно эти значения в поле Num_book таблицы Session. Если попробовать ввести другое значение, система выдаст приблизительно следующее окно (рис. 29).
Рис. 29. Сообщение об ошибке ввода данных связанных таблиц Student и Session
Таблица Session с введенными данными изображена на рисунке 30.
Рис. 30. Таблица Session с введенными данными
Итак, база данных создана. Ввод и обработку данных в таблицах можно реализовать программным путем.
⇑
Связанные темы
- 001 — Пример создания/подключения локальной базы данных Microsoft SQL Server, которая размещается в «*.mdf»-файле
- 002 — Пример создания новой таблицы в локальной базе данных Microsoft SQL Server, размещенной в «*.mdf»-файле
- 003 — Создание поля автоинкремента (счетчика) в таблице базы данных Microsoft SQL Server, которая размещается в «*.mdf»-файле
- 004 — Создание связи (отношения) типа «один ко многим» между таблицами базы данных MS SQL Server
- 001 — Пример создания локальной базы данных Microsoft SQL Server (SQLEXPRESS) в Microsoft Visual Studio