1.4. 访问数据库

一旦创建了数据库,你就可以访问它:

  • 运行PostgreSQL交互的终端程序psql, 它允许你交互地输入、编辑、执行SQL命令。

  • 使用我们现有的图形前端工具,比如pgAdmin或者 带ODBC 或 JDBC支持的办公套件来创建和管理数据库。 这种方法在这份教程中没有介绍。

  • 使用多种语言绑定中的一种写一个客户应用。这些可能性在 Part IV中有更深入的讨论。

你可能需要启动psql来试验本教程中的例子。你可以用 下面的命令为mydb数据库激活它:

<samp class="literal">$</samp> <kbd class="literal">psql mydb</kbd>

如果你省略了数据库名字,那么它缺省就是你的用户账号名字。你已经在前面的 使用createdb小节里了解这一点了。

psql里,你会看到下面的欢迎信息:

psql (9.3.1)
Type "help" for help.

mydb=>

最后一行也可能是

mydb=#

这个提示符意味着你是数据库超级用户,最可能出现在你自己安装了 PostgreSQL的情况下。作为超级用户意味着你 不受访问控制的限制。对于本教程的目的而言,是否超级用户并不重要。

如果你启动psql时碰到了问题,那么回到前面的小节。诊断 createdb的方法和诊断psql的方法很类 似,如果前者能运行那么后者也应该能运行。

psql打印出的最后一行是提示符,它表示psql 正听着你说话,这个时候你就可以敲入SQL查询到一个 psql维护的工作区中。尝试一下下面的命令:

<samp class="literal">mydb=></samp> <kbd class="literal">SELECT version();</kbd>
                               version
 -----------------------------------------------------------------------

 PostgreSQL 9.3.1 on i586-pc-linux-gnu, compiled by GCC 2.96, 32-bit
(1 row)

<samp class="literal">mydb=></samp> <kbd class="literal">SELECT current_date;</kbd>
    date
------------
 2002-08-31
(1 row)

<samp class="literal">mydb=></samp> <kbd class="literal">SELECT 2 + 2;</kbd>
 ?column?
----------
        4
(1 row)

psql程序有一些不属于 SQL 命令的内部命令。它们以反斜杠 "\"开头。比如,你可以用下面的命令获取各 种PostgreSQL SQL命令的帮助语法:

<samp class="literal">mydb=></samp> <kbd class="literal">\h</kbd>

要退出psql,键入:

<samp class="literal">mydb=></samp> <kbd class="literal">\q</kbd>

然后psql就会退出并且返回到命令行 shell(要获取更多有关 内部命令的信息,你可以在psql提示符上键入\?)。 psql的完整功能在psql文档中。在这份文档里, 我们将不会明确使用这些特性,但是你自己可以在它们有用的时候使用它们。