Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
лекции по бд.doc
Скачиваний:
0
Добавлен:
01.05.2025
Размер:
4.79 Mб
Скачать

Получение данных из таблиц других пользователей

Чтобы иметь возможность обратиться к данным другого пользователя, нужно иметь на это разрешение. Пользователи, не являющиеся владельцами таблицы, без разрешения получить доступ к этой таблице не могут. Только после того, как разрешение на доступ получено (соответствующая команда GRANT обсуждается в ходе урока 20, «Создание и использование представлений и синонимов»), вы получаете возможность извлечь данные из таблицы другого пользователя. Чтобы обратиться к данным таблицы другого пользователя с помощью оператора SELECT, перед именем таблицы укажите имя соответствующей схемы, как это сделано в следующем примере.

SELECT EMP_ID FROM SCHEMA.EMPLOYEE_TBL;

Если для таблицы, к которой нужно получить доступ, в базе данных имеется синоним, имя схемы указывать не обязательно Синонимы – это альтернативные имена таблиц, они обсуждаются в ходе урока 21, "Работа с системным каталогом".

Псевдонимы столбцов

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

SELECT ИМЯ_СТОЛБЦА ПСЕВДОНИМ FROM ИМЯ_ТАБЛИЦЫ;

Использование псевдонимов иллюстрируется следующим примером с таблицей PRODUCTS_TBL. Здесь столбец с описаниями товаров отображается дважды, но второй раз столбец отображается с именем ТОВАР (обратите внимание на названия выводимых столбцов).

SELECT PROD_DESC, PROD_DESC ТОВАР FROM PRODUCTS_TBL;

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

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

Резюме

Вы ознакомились с запросами к базе данных, которые являются основным средством извлечения информации из реляционной базы данных. В основе построения запросов лежит использование оператора SELECT, являющегося командой языка запросов к данным (DQL). Каждый оператор SELECT должен включать ключевое слово FROM. Вы узнали о том, как с помощью ключевого слова WHERE в запросах задаются условия отбора, а с помощью ключевого слова ORDER BY – условия сортировки. Вы освоили основы создания запросов и после нескольких упражнений будете готовы к тому, чтобы учиться строить более сложные запросы на следующем уроке.

Упражнения

Рассмотрите следующие операторы SELECT и выясните, являются ли они правильными с точки зрения синтаксиса. Если нет, то что в них следует исправить? Здесь использовалась таблица EMPLOYEE_TBL.

  1. SELECT EMP_ID, LAST_NAME, FIRST_NAME, FROM EMPLOYEE_TBL;

  2. SELECT EMP_ID, LAST_NAME ORDER BY EMP_ID FROM EMPLOYEE_TBL;

  3. SELECT EMP_ID, LAST_NAME, FIRST_NAME FROM EMPLOYEE_TBL WHERE EMP_ID = '333333333' ORDER BY EMP_ID;

  4. SELECT EMP_ID SSN, FIRST_NAME FROM EMPLOYEE_TBL WHERE EMP_ID = '333333333' ORDER BY 1;

  5. SELECT EMP_ID, LAST_NAME, FIRST_NAME FROM EMPLOYEE_TBL WHERE EMP­_ID = '333333333' ORDER BY 3, 1, 2;