AlbumId = 1
Title = "For Those About to Rock We Salute You"
ArtistId = 1
НАПОМИНАНИЕ
Столбцы, которые вы видите, называются полями. Каждая строка представляет собой отдельную запись.
Изучая эту таблицу, мы также можем узнать немного о других таблицах нашей базы данных. В главе 1 мы рассмотрели концепцию внешнего ключа. AlbumId — первичный ключ для таблицы albums (для каждой записи имеется уникальный номер). Также ArtistId принимает целое число вместо фактического имени исполнителя. Это означает, что, вероятно, существует другая таблица, содержащая фактическое имя исполнителя (в формате символьного типа данных), и что ArtistId, скорее всего, является внешним ключом.
НАПОМИНАНИЕ
Внешний ключ — это поле в таблице, которое служит для указания в одной таблице на первичный ключ в другой таблице. Если мы проанализируем таблицу artists, мы можем определить, что ArtistId — первичный ключ для таблицы artists, поэтому он является внешним ключом для таблицы albums.
Вкладка Execute SQL
На вкладке Execute SQL (Выполнить SQL-запрос) мы пишем операторы SQL. Вкладка содержит три панели окон основных компонентов: панель запросов (Query Pane), панель результатов (Results Pane) и панель сообщений (Messages Pane). Давайте рассмотрим назаначение этих трех панелей с помощью следующего кода SQL на панели запросов (рис. 29):
SELECT
*
FROM
albums;
Данный пример задает выборку всех полей (символ * обозначает «все поля») из таблицы albums. Нажмите кнопку выполнения, расположенную над панелью запросов, и ниже, на панели результатов, отобразятся поля и данные этих полей.
Как показано на рис. 29, расположенная слева кнопка воспроизведения выполняет все введенные операторы SQL. Расположенная справа кнопка воспроизведения выполняет только оператор SQL, на котором находится курсор (одновременно выполняется только один оператор).
Рис. 29
Примечание
Поскольку пока мы изучаем только базовые запросы, мы будем запускать только один оператор SQL. В более сложных запросах мы можем использовать несколько операторов, которые будут выполняться одновременно. Возможность выполнения операторов по отдельности очень полезна в запросах, содержащих несколько операторов. Если на панели выполнения содержится только один оператор SQL, то обе кнопки воспроизведения по сути выполняют одно и то же действие.
На панели результатов приведены выходные данные, сгенерированные нашим запросом. При получении большого количества результатов, которые не помещаются на одном экране (рис. 30), в браузере появится полоса прокрутки.
Есть еще один способ определить, сколько результатов (в данном случае на экране мы видим только пять) выдает данный запрос. Ниже панели результатов расположена панель сообщений, в которой отображается информация о нашем запросе.
• Количество строк, возвращаемых нашим оператором SQL.
• Время, необходимое на выполнение нашего запроса или оператора SQL.
• Сообщения об ошибках, если наш оператор SQL содержит ошибки.
Рис. 30
Рис. 31
В первую очередь из сообщения мы видим, что в результате нашего запроса вернулось 347 строк. Это сообщение полезно, в случае если бы мы не заметили появление полосы прокрутки. Далее мы прочтем, что наш запрос был выполнен за 9 миллисекунд (сокращенно 9 мс). Почему так важно знать, сколько времени требуется на обработку запроса? В данном случае, может, это и не особо важно. Однако при работе с большими базами данных и с более сложными запросами возврат данных может занять гораздо больше времени. Время выполнения запроса также зависит от оптимальности построения и структуры базы данных. Более подробно о структуре базы данных при работе с несколькими таблицами мы поговорим в главе 6.
Примечание
Панель сообщений — место, где также будут отображаться сообщения об ошибках. Если ваш запрос не выполняется корректно, необходимо проверить панель сообщений.
Контрольные вопросы
Примечание
Теперь пришло время первых контрольных вопросов! Они приводятся в конце каждой главы. Контрольные вопросы и практические задания — это основа закрепления теоретических знаний.
Используя вкладки Database Structure (Структура базы данных) и Browse Data (Просмотр данных), ответьте на следующие вопросы.
1. Сколько таблиц в нашей базе данных?