Чтение онлайн

на главную - закладки

Жанры

Обработка баз данных на Visual Basic®.NET

Прайс Кевин Т.

Шрифт:

Сценарии создания данных

Как уже упоминалось ранее, папка Create Scripts содержит сценарии создания новых объектов базы данных, включая таблицы, представления, хранимые процедуры и ограничения. Обычно они используются для создания сценариев установки рабочей базы данных или возвращения тестовой базы данных к исходному состоянию.

Для генерации сценариев создания данных выполните перечисленные ниже действия.

1. Откройте окно Server Explorer и щелкните правой кнопкой мыши на элементе, для которого предполагается создать сценарий. Этим элементом может быть вся база данных или отдельный объект (таблица, представление, хранимая процедура или функция). В этом примере следует выбрать базу данных Novelty.

2. Выберите в контекстном меню команду Generate Create Script (Генерировать сценарий создания данных). При условии успешного ввода учетной записи и пароля на предыдущем этапе создания ссылки на эту базу данных на экране отобразится диалоговое окно Generate Create Scripts (Генерировать сценарии создания данных).

3. Диалоговое окно Generate Create Scripts будет сконфигурировано только для избранного объекта. Например, после выбора базы данных Novelty оно будет иметь такой вид, как на рис. 8.3, с отображением всех объектов этой базы данных, но еще без выбора отдельных объектов для работы с генерируемым сценарием.

Рис. 8.3. Диалоговое окна Generate Create Scripts для базы данных Novelty

4. Во вкладке General (Общие) можно указать объекты, включаемые в генерируемый сценарий, выбрав один или несколько объектов в списке Objects on Novelty (Объекты базы данных Novelty) и щелкнув на кнопке Add (Включить в сценарий) либо дважды щелкнув на выбранном объекте. Для включения в сценарий целой группы объектов, например всех объектов одного типа, т.е. всех таблиц или всех представлений, нужно установить соответствующий флажок, т.е. Script all Objects (Включить все объекты), All tables (Все таблицы), All views (Все представления) и т.д. В данном примере выберите флажок Script all objects.

5. Выберите вкладку Formatting (Форматирование) и, помимо указанных по умолчанию параметров, установите флажок Include descriptive headers in the script files (Включить в сценарий описательные заголовки).

6. Щелкните на кнопке OK, и на экране появится диалоговое окно Browse for Folder (Выбор папки), где необходимо выбрать папку, в которой следует сохранить файл генерируемого сценария. Обратите внимание, что по умолчанию выбирается папка Create Scripts текущего проекта, хотя ее, конечно, можно выбрать по своему желанию. В данном примере используется предлагаемая по умолчанию папка Create Scripts. Для продолжения работы щелкните на кнопке OK.

РИС. 8.4. Итоговый вид окна Solution Explorer с файлами сценариев для базы данных Novelty

Поскольку в диалоговом окне Generate Create Scripts были выбраны все объекты базы данных, то в проект базы данных будет включено несколько файлов сценария, как показано на рис. 8.4. Учтите, что данный сценарий можно включить в один файл. Для этого нужно во вкладке Options (Параметры) диалогового окна Generate Create Scripts выбрать в группе Files to Generate (Генерировать файлы) переключатель Create one file (Создать один файл).

СОВЕТ

Устанавливая флажок Script database (Сгенерировать сценарий базы данных) во вкладке Options диалогового окна Generate Create Scripts, можно даже сгенерировать сценарий создания самой базы данных. В этом примере проект базы данных NoveltyData содержит набор сценариев для создания всех объектов базы данных Novelty бы применения этих сценариев демонстрируются в следующих разделах.

8. Для просмотра (или изменения) содержимого файла сценария дважды щелкните на нем в окне Solution Explorer. На рис. 8.5 показано содержимое сценария dbo.tblOrder.tab, который создает таблицу tblOrder в базе данных Novelty.

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

РИС. 8.5. Содержимое сгенерированного сценария создания таблицы tblOrder

Сценарии изменения данных

Для внесения изменений в существующую схему базы данных используются сценарии изменения данных. Хотя они могут создаваться вручную, все же предпочтительнее для этого использовать специальные инструменты. В главах 1, "Основы построения баз данных", и 2, "Запросы и команды на языке SQL", рассматриваются инструменты Visual Studio .NET, предназначенные для работы с базой данных. Они способны автоматически создавать сценарий для любых изменений схемы базы данных.

Допустим, требуется создать новое поле StartDate в таблице tblEmployee для даты зачисления каждого сотрудника. Для этого выполните перечисленные ниже действия.

1. В окне Server Explorer раскройте папку Tables базы данных Novelty и щелкните правой кнопкой мыши на таблице tblEmployee.

2. Выберите в контекстном меню команду Design Table (Создание таблицы) для перехода в режим конструктора таблицы.

3. Создайте новое поле StartDate и укажите для него тип данных datetime, как показано на рис. 8.6.

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

1. Выберите команду меню Diagram→Generate Change Script (Диаграмма→Генерация сценария изменения) или щелкните на кнопке Generate Change Script (Генерация сценария изменения) в панели инструментов. На экране появится диалоговое окно Save Change Script (Сохранение сценария изменения) с областью предварительного просмотра текста сценария (рис. 8.7).

РИС. 8.6. Создание нового поля StartDate в таблице tblEmployee

РИС. 8.7. Диалоговое окна Save Change Script с содержимым сценария вставки поля StartDate в таблицу tblEmployee

2. Щелкните на кнопке Yes, и на экране появится стандартное диалоговое окно Save As (Сохранить как) с предложением сохранить данный сценарий в папке Change Scripts текущего проекта базы данных.

3. Щелкните на кнопке Save для сохранения сценария с принимаемым по умолчанию именем tblEmployee.sql.

Поделиться:
Популярные книги

Андер Арес

Грехов Тимофей
1. Андер Арес
Фантастика:
рпг
аниме
фэнтези
фантастика: прочее
5.00
рейтинг книги
Андер Арес

Полнолуние

Робардс Карен
Любовные романы:
остросюжетные любовные романы
8.87
рейтинг книги
Полнолуние

Собрание сочинений. Том третий

Гашек Ярослав
3. Ярослав Гашек. Собрание сочинений в 6-ти томах
Юмор:
юмористическая проза
5.00
рейтинг книги
Собрание сочинений. Том третий

Локки 2. Потомок бога

Решетов Евгений Валерьевич
2. Локки
Фантастика:
городское фэнтези
аниме
попаданцы
5.00
рейтинг книги
Локки 2. Потомок бога

Кодекс Охотника. Книга XXXVI

Винокуров Юрий
36. Кодекс Охотника
Фантастика:
аниме
фэнтези
попаданцы
5.00
рейтинг книги
Кодекс Охотника. Книга XXXVI

Менталист. Трансформация

Еслер Андрей
4. Выиграть у времени
Фантастика:
фэнтези
альтернативная история
7.28
рейтинг книги
Менталист. Трансформация

Вернадский

Гумилевский Лев Иванович
325. Жизнь замечательных людей
Документальная литература:
биографии и мемуары
5.00
рейтинг книги
Вернадский

Мистика

Гейман Нил
Детективы:
классические детективы
исторические детективы
7.29
рейтинг книги
Мистика

Вселенские Соборы

Карташев Антон Владимирович
Научно-образовательная:
история
религиоведение
5.00
рейтинг книги
Вселенские Соборы

Группа крови на рукаве

Вязовский Алексей
1. ГК
Фантастика:
боевая фантастика
попаданцы
альтернативная история
6.40
рейтинг книги
Группа крови на рукаве

Я все еще царь. Книга XXXI

Дрейк Сириус
31. Дорогой барон!
Фантастика:
юмористическое фэнтези
аниме
попаданцы
5.00
рейтинг книги
Я все еще царь. Книга XXXI

Наследник старого рода

Шелег Дмитрий Витальевич
1. Живой лёд
Фантастика:
фэнтези
8.19
рейтинг книги
Наследник старого рода

Страдания юного Вертера. Фауст (сборник)

фон Гёте Иоганн Вольфганг
Любовные романы:
исторические любовные романы
7.00
рейтинг книги
Страдания юного Вертера. Фауст (сборник)

Афганский полигон

Кулаков Сергей Федорович
Спецназ. Группа Антитеррор
Детективы:
боевики
6.17
рейтинг книги
Афганский полигон