2024 年 9 月 26 日: PostgreSQL 17 发布!
支持版本:当前 (17) / 16 / 15 / 14 / 13 / 12
开发版本:devel
不支持版本:11 / 10 / 9.6 / 9.5 / 9.4 / 9.3 / 9.2 / 9.1 / 9.0 / 8.4 / 8.3 / 8.2 / 8.1 / 8.0 / 7.4 / 7.3 / 7.2

1.4. 访问数据库 #

创建数据库后,可以通过以下方式访问它

  • 运行 PostgreSQL 交互式终端程序,称为 psql,它允许您交互式地输入、编辑和执行SQL命令。

  • 使用现有的图形化前端工具,如 pgAdmin 或带有ODBCJDBC支持的办公套件来创建和操作数据库。这些可能性在本教程中没有介绍。

  • 编写自定义应用程序,使用多种可用的语言绑定。这些可能性将在 第 IV 部分 中进一步讨论。

您可能想要启动 psql 来尝试本教程中的示例。可以通过键入以下命令为 mydb 数据库激活它

$ psql mydb

如果您没有提供数据库名称,它将默认使用您的用户帐户名。您已经在上一节中使用 createdb 发现了这种方案。

psql 中,您将看到以下消息

psql (17.0)
Type "help" for help.

mydb=>

最后一行也可能是

mydb=#

这意味着您是数据库超级用户,如果您自己安装了 PostgreSQL 实例,则很可能是这种情况。超级用户意味着您不受访问控制的约束。在本教程中,这并不重要。

如果您在启动 psql 时遇到问题,请返回上一节。 createdbpsql 的诊断类似,如果前者工作,后者也应该工作。

psql 打印的最后一行是提示符,它表示 psql 正在监听您,并且您可以键入SQL查询到由 psql 保持的工作区中。尝试以下命令:

mydb=> SELECT version();
                                         version
-------------------------------------------------------------------​-----------------------
 PostgreSQL 17.0 on x86_64-pc-linux-gnu, compiled by gcc (Debian 4.9.2-10) 4.9.2, 64-bit
(1 row)

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

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

psql 程序有一些不是 SQL 命令的内部命令。它们以反斜杠字符 \ 开头。例如,您可以通过键入以下命令获取有关各种 PostgreSQLSQL命令的语法帮助

mydb=> \h

要退出 psql,请键入

mydb=> \q

psql 将退出并返回您的命令 shell。(有关更多内部命令,请在 psql 提示符下键入 \?。)psql 的全部功能在 psql 中有文档说明。在本教程中,我们不会明确使用这些功能,但您可以在需要时自己使用它们。

提交更正

如果您在文档中发现任何不正确的内容,与您对特定功能的体验不符或需要进一步说明,请使用 此表格 报告文档问题。