Доступ к базе данных

Создав базу данных, вы можете получить к ней доступ одним из следующих способов:

  • С помощью интерактивного терминала QHB, называемого qsql, который позволяет в интерактивном режиме вводить, редактировать и выполнять команды SQL.

  • С использованием существующего графического инструмента внешнего интерфейса, например, pgAdmin или офисного пакета с поддержкой ODBC или JDBC. Эти возможности не рассматриваются в этом руководстве.

  • Написав собственное приложение с использованием одной из нескольких доступных языковых привязок.

Возможно, вы захотите запустить qsql, чтобы попробовать примеры из этого урока. Его можно запустить для базы данных mydb, набрав команду:

$ qsql -d mydb

Если вы не укажете имя базы данных, по умолчанию будет использоваться имя вашей учетной записи. Мы уже сталкивались с этой схемой в предыдущем разделе, при работе с createdb.

Внутри qsql вы увидите следующее сообщение:

qsql - Interactive terminal qhb (1.1.0)
Enter "\help" in order to get help

mydb(username)=>

Последняя строка также может быть:

mydb(username)=#

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

Если вы столкнулись с проблемами при запуске qsql, вернитесь к предыдущему разделу. Диагностика createdb и qsql схожи, и если первый сработал, последний также должен сработать.

Последняя строка, напечатанная qsql является приглашением и указывает, что qsql ожидает ввод, то есть вы можете вводить запросы SQL в рабочее пространство. Попробуйте эти команды:

mydb=> SELECT version();
  version
-----------
 QHB 1.2.0
(1 row)

mydb=> SELECT current_date;
    date
------------
 2016-01-07
(1 row)

mydb=> SELECT 2 + 2;
 ?column?
----------
        4
(1 row)

Программа qsql имеет ряд внутренних команд, которые не являются командами SQL. Они начинаются с символа обратной косой черты "\". Например, чтобы выйти из qsql, введите:

mydb=> \q

и qsql завершит работу и вернёт вас в командную оболочку.

Все возможности qsql описаны в соответствующем разделе: qsql.