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

на главную

Жанры

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

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

Шрифт:

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

1. Очистите диалоговое окно запроса Query, нажав комбинацию клавиш <Ctrl+Shift+Del>.

2. Введите в нем следующую команду:

sp_help

3. Выполните введенную команду. SQL Server сгенерирует список доступных объектов базы данных, как показано на рис. 3.15.

РИС. 3.15.

Результат выполнения хранимой процедуры sp_help для базы данных pubs

НА ЗАМЕТКУ

Вы можете создавать собственные хранимые процедуры. Этот процесс описан в разделе о создании и выполнении хранимых процедур далее в этой главе. Кроме пользовательских хранимых процедур используемой базы данных, существуют и системные хранимые процедуры, которые доступны для любой базы данных на SQL Server. Примеры использования системных хранимых процедур приведены далее в главе.

Использование существующей базы данных

Для работы с определенной базой данных в программе Query Analyzer можно использовать команду USE. После выбора с ее помощью соответствующей базы данных все вводимые SQL-команды будут выполняться для этой выбранной базы данных. Обратите особое внимание на необходимость применения команды USE, поскольку существует ряд команд, которые имеют один и тот же синтаксис при использовании с разными базами данных. Выполнение такой команды "не с той базой данных" может привести к неприятным последствиям.

НА ЗАМЕТКУ

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

Например, для активизации базы данных novelty вместо основной базы данных master выполните перечисленные ниже действия.

1. Введите в окне Query Analyzer команду USE novelty. Если база данных novelty существует, то SQL Server вернет следующее сообщение:

The command(s) completed successfully.

Что в переводе означает:

Команды успешно выполнены.

2. Если же базы данных novelty на этом сервере нет, то появится сообщение

Server: 911, Level 16, State 1, Line 1

Could not locate entry in sysdatabases for database 'novelty'. No entry found with that name. Make sure that the name is entered correctly.

Что в переводе означает следующее:

Сервер: Сообщение Уровень 16, Состояние 1, Строка 1

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

Если вы забыли имя базы данных, то запустите программу SQL Server Enterprise Manager и найдите интересующую вас базу данных. Для просмотра объектов базы данных можно также воспользоваться хранимой процедурой sp_helpdb.

Создание команд SQL в программе Query Analyzer

С помощью программы Query Analyzer можно создавать практически любые команды SQL, причем этот способ обладает многими преимуществами по сравнению со всеми другими способами создания команд SQL. Учтите, что синтаксис некоторых команд SQL может оказаться гораздо сложнее, чем простое использование графических элементов управления в программе SQL Server Enterprise Manager, особенно при использовании редко выполняемых команд, например для создания баз данных. В этом смысле программа Query Analyzer обладает несомненным преимуществом интерактивного создания команд SQL и мгновенно реагирует на создаваемые команды. Query Analyzer обладает некоторыми другими функциональными возможностями, которых нет программе SQL Server Enterprise Manager, например способностью запускать запросы и хранимые процедуры.

В главе 2, "Запросы и команды на языке SQL", рассматриваются некоторые наиболее часто используемые команды SQL. Большая часть этого материала относится также к выполнению запросов и хранимых процедур для SQL Server.

Использование представлений для управления доступом к данным

Представление (view) — это, по сути, определение запроса, хранящегося в базе данных. Оно подобно определению запроса в базах данных Microsoft Jet, однако отличается местом хранения: располагается в базе данных и предоставляет приложению-клиенту доступ к данным.

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

Например, если пользователь получает доступ к данным с помощью представления, а не посредством прямого обращения к таблице, это открывает ему следующие возможности:

• изменять структуру таблицы, не меняя ассоциированного с ней представления;

• ограничивать количество строк и столбцов, возвращаемых представлением;

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

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

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

Бастард Императора

Орлов Андрей Юрьевич
1. Бастард Императора
Фантастика:
фэнтези
аниме
5.00
рейтинг книги
Бастард Императора

На границе империй. Том 10. Часть 1

INDIGO
Вселенная EVE Online
Фантастика:
космическая фантастика
попаданцы
5.00
рейтинг книги
На границе империй. Том 10. Часть 1

Имя нам Легион. Том 7

Дорничев Дмитрий
7. Меж двух миров
Фантастика:
боевая фантастика
рпг
аниме
5.00
рейтинг книги
Имя нам Легион. Том 7

Измена. Вторая жена мужа

Караева Алсу
Любовные романы:
современные любовные романы
5.00
рейтинг книги
Измена. Вторая жена мужа

Буря империи

Сай Ярослав
6. Медорфенов
Фантастика:
аниме
фэнтези
фантастика: прочее
эпическая фантастика
5.00
рейтинг книги
Буря империи

Пенсия для морского дьявола

Чиркунов Игорь
1. Первый в касте бездны
Фантастика:
попаданцы
5.29
рейтинг книги
Пенсия для морского дьявола

На изломе чувств

Юнина Наталья
Любовные романы:
современные любовные романы
6.83
рейтинг книги
На изломе чувств

Тринадцатый II

NikL
2. Видящий смерть
Фантастика:
фэнтези
попаданцы
аниме
5.00
рейтинг книги
Тринадцатый II

Сирота

Шмаков Алексей Семенович
1. Светлая Тьма
Фантастика:
юмористическое фэнтези
городское фэнтези
аниме
5.00
рейтинг книги
Сирота

Законы Рода. Том 9

Flow Ascold
9. Граф Берестьев
Фантастика:
городское фэнтези
попаданцы
аниме
дорама
фэнтези
фантастика: прочее
5.00
рейтинг книги
Законы Рода. Том 9

Красноармеец

Поселягин Владимир Геннадьевич
1. Красноармеец
Фантастика:
боевая фантастика
попаданцы
4.60
рейтинг книги
Красноармеец

Огненный князь 4

Машуков Тимур
4. Багряный восход
Фантастика:
попаданцы
аниме
5.00
рейтинг книги
Огненный князь 4

Начальник милиции. Книга 5

Дамиров Рафаэль
5. Начальник милиции
Фантастика:
попаданцы
альтернативная история
5.00
рейтинг книги
Начальник милиции. Книга 5

Инкарнатор

Прокофьев Роман Юрьевич
1. Стеллар
Фантастика:
боевая фантастика
рпг
7.30
рейтинг книги
Инкарнатор