Некоторые из рассмотренных далее инструментов описаны в предыдущих главах, а их использование часто имеет интуитивно понятный характер. Многие инструменты должны быть хорошо известны пользователям, которые имеют опыт работы с базами данных Microsoft Access. Тем же, кто сталкивается с такими инструментами впервые, будет полезно познакомиться со справочными материалами Visual Studio .NET.
В этой главе описываются способы применения инструментов проекта базы данных Visual Studio .NET для работы с базами данных.
Создание проекта базы данных
Проект базы данных Visual Studio.NET предназначен для разработки, тестирования и выполнения сценариев и запросов SQL, а также для управления ими. Этот проект не связан напрямую ни с одним из .NET-совместимых языков программирования, например Visual Basic или С#. При разработке многоуровневого приложения данный тип проекта упрощает процесс проектирования и создания уровня базы данных, а также управления им.
В одних приложениях проект базы данных может быть частью кода приложения, а в других — отдельным администрирующим решением, которое используется для установки и сопровождения базы данных создаваемого приложения.
Для включения проекта базы данных в решение Visual Studio .NET выполните перечисленные ниже действия.
1. Откройте диалоговое окно Add New Project (Создать новый проект), выбрав команду меню File→Add Project→New Project (Файл→Создать проект→Новый проект) или щелкнув правой кнопкой мыши на названии решения в окне Solution Explorer и выбрав в контекстном меню команду Add→New Project (Создать→Новый проект).
2. В левой части Project Types (Типы проектов) диалогового окна Add New Project найдите каталог Other Projects (Другие проекты) и раскройте его, щелкнув на пиктограмме с изображением знака "плюс".
3. Выберите каталог Database Projects (Проекты баз данных), а затем выберите шаблон Database Project (Проект баз данных) в правой части окна Templates (Шаблоны).
4. В текстовом поле Name (Имя) укажите имя проекта NoveltyData, в текстовом поле Location (Расположение) укажите путь к файлам проекта, а затем щелкните на кнопке OK.
5. На экране отобразится диалоговое окно SQL Server Login (Регистрация в SQL Server) с предложением выбрать используемый сервер баз данных и ввести учетное имя и пароль. В списке Server (Сервер) выберите сервер (local) и установите флажок параметра Trusted Connection (Доверительное подключение).
6. Если ранее в окне Server Explorer не были определены никакие подключения к базе данных, то на экране отобразится диалоговое окно Data Link Properties (Свойства подключения к базе данных), в котором можно определить новое подключение к базе данных.
7. Если в окне Server Explorer уже определено хотя бы одно подключение к базе данных, то на экране появится диалоговое окно Add Database Reference (Создать ссылку на базу данных). В списке имеющихся ссылок выберите нужную ссылку или щелкните на кнопке Add New Reference (Создать новую ссылку), чтобы открыть диалоговое окно Data Link Properties (Свойства подключения к базе данных), в котором можно определить новое подключение к базе данных.
8. В списке имеющихся ссылок выберите ссылку на базу данных Novelty и щелкните на кнопке OK. (Если этой ссылки все же нет, ее придется создать, щелкнувна кнопке Add New Reference.)
9. На рис. 8.1 показан итоговый вид созданного проекта и его подчиненных папок в окне Solution Explorer.
РИС. 8.1. Итоговый вид проекта NoveltyData в окне Solution Explorer
Обратите внимание на то, что проект NoveltyData содержит следующие папки:
• Change Scripts (Сценарии изменения данных);
• Create Scripts (Сценарии создания данных);
• Queries (Запросы);
• Database References (Ссылки на базы данных).
Рассмотрим подробнее эти папки и их содержимое. Начнем с папки Database References, потому что с нее начинается любая работа с базами данных.
Ссылки на базы данных
Ссылка на базу данных является указателем на нее, но она не позволяет осуществлять доступ к объектам базы данных и их просмотр, так как за это отвечает подключение к базе данных.
Ссылка на базу данных — это хранимая на жестком диске часть проекта базы данных. При открытии проекта она автоматически считывается для учета всех определенных в окне Server Explorer подключений к базам данных и поиска соответствующего ссылке подключения. Если указанного подключения нет, то ссылка автоматически создает его.
Первая определенная ссылка на базу данных становится для данного проекта используемой по умолчанию. Поэтому все сценарии и запросы проекта по умолчанию будут выполняться именно для этой ссылки на базу данных.
НА ЗАМЕТКУ
Пиктограмма используемой по умолчанию ссылки на базу данных содержит красную, зеленую или белую стрелку ярлыка, а все пиктограммы всех других ссылок на базы данных содержат черную или белую стрелки.
Для указания другой ссылки в качестве используемой по умолчанию следует щелкнуть на нужной ссылке и в контекстном меню установить флажок Set as Project Default (Использовать по умолчанию).
Для создания новых ссылок на базы данных щелкните правой кнопкой мыши на папке Database References (Ссылки на базы данных), а затем выберите в контекстном меню команду New Database Reference (Создать ссылку на базу данных).
СОВЕТ
Можно одновременно создать ссылку на базу данных и указать ее в качестве используемой по умолчанию. Для этого щелкните правой кнопкой мыши на названии проекта базы данных в окне Solution Explorer и выберите в контекстном меню команду Set Default Reference (Указать используемую по умолчанию ссылку). На экране появится диалоговое окно Set Default Reference (Указать используемую по умолчанию ссылку), нового подключения к базе данных ссылка на него включается в проект;и впредь используется по умолчанию.
Сценарии
Шаблон проекта базы данных автоматически создает две папки для хранения сценариев SQL. Папка Create Scripts (Сценарии создания данных) содержит сценарии SQL, которые отражают предполагаемые изменения в базе данных. Изменения могут быть отложены, так как разработчик не имеет достаточных полномочий для изменения рабочей базы данных (иногда это бывает весьма полезно) или несколько изменений предполагается объединить и внести одновременно.
Любой сценарий SQL можно создать вручную, щелкнув правой кнопкой мыши на имени папки (или имени проекта) в окне Solution Explorer, а затем выбрав в контекстном меню команду Add New Item (Создать новый элемент) или Add SQL Script (Создать сценарий SQL). Выбрав один из стандартных шаблонов сценариев (рис. 8.2), их можно отредактировать вручную в редакторе Visual Studio .NET.
НА ЗАМЕТКУ
Хотя имена каталогов даются в соответствии с принятым соглашением об именах, их все же можно изменить. Однако при этом следует учитывать вероятность того, что это может запутать других разработчиков проекта.
В проект базы данных можно включить другие папки. Например, отдельную папку можно создать для хранения сценариев обновления базы данных до указанной версии или для других видов действий. Аналогично, можно создать разные папки для хранения запросов разного типа. Для создания новой папки в проекте базы данных щелкните правой кнопкой мыши на имени проекта и выберите в контекстном меню команду New Folder (Создать папку).
РИС. 8.2. Стандартные шаблоны сценариев SQL в диалоговом окне Add New Item
Следует отметить, что сценарии создания и изменения данных могут создаваться автоматически.
НА ЗАМЕТКУ
Сценарии создания данных можно генерировать только в SQL Server 2000 или Server 7.0. Более для их использования на компьютере с Visual Studio .NET нужно установить клиентские инструменты SQLServer.
Сценарии создания данных
Как уже упоминалось ранее, папка Create Scripts содержит сценарии создания новых объектов базы данных, включая таблицы, представления, хранимые процедуры и ограничения. Обычно они используются для создания сценариев установки рабочей базы данных или возвращения тестовой базы данных к исходному состоянию.
Для генерации сценариев создания данных выполните перечисленные ниже действия.
1. Откройте окно Server Explorer и щелкните правой кнопкой мыши на элементе, для которого предполагается создать сценарий. Этим элементом может быть вся база данных или отдельный объект (таблица, представление, хранимая процедура или функция). В этом примере следует выбрать базу данных Novelty.
2. Выберите в контекстном меню команду Generate Create Script (Генерировать сценарий создания данных). При условии успешного ввода учетной записи и пароля на предыдущем этапе создания ссылки на эту базу данных на экране отобразится диалоговое окно Generate Create Scripts (Генерировать сценарии создания данных).
3. Диалоговое окно Generate Create Scripts будет сконфигурировано только для избранного объекта. Например, после выбора базы данных Novelty оно будет иметь такой вид, как на рис. 8.3, с отображением всех объектов этой базы данных, но еще без выбора отдельных объектов для работы с генерируемым сценарием.