【问题标题】:psql appears not to be working [duplicate]psql 似乎无法正常工作[重复]
【发布时间】:2012-11-03 20:17:43
【问题描述】:

可能重复:
In psql, why do some commands have no effect?

我刚刚安装了 Postgres 服务器,但在使用 psql 时遇到了问题。每当我在psql shell 中时,所有命令都没有任何效果。例如:

postgres=# create database testing
postgres=# create user foo

我的理解是我应该看到这样的东西:

postgres=# create database testing
CREATE DATABASE
postgres=# create user foo
CREATE ROLE

奇怪的是我可以使用 shell 命令来创建数据库和角色。我已经在 Ubuntu 10.04 的香草安装上安装了来自 ppa:pitti/postgresql 的 postgres(根据 railscast #335)。

我在谷歌上花了相当多的时间试图找出我的问题是什么,但我似乎无法得到任何答案。

谢谢。

【问题讨论】:

    标签: postgresql


    【解决方案1】:

    您可能没有看到这一点,因为您没有用分号 (;) 结束该行。你的例子应该写成:

    postgres=# CREATE DATABASE testing;
    postgres=# CREATE ROLE foo;
    

    【讨论】:

    • 好吧,我现在觉得很傻...... :P 有点惊讶它没有抱怨。
    • @Clay 它怎么知道抱怨?将 SQL 语句拆分为多行以便于编辑、可读性等是完全有效(且有用)的。
    【解决方案2】:

    你确定你的命令被; 终止了吗?从psql 发出的所有语句都应终止by the semicolon,除非您在调用psql 时指定了-S 开关。

    发送查询缓冲区执行的另一种方法是发出\g 元命令。

    【讨论】:

      猜你喜欢
      • 2012-09-10
      • 1970-01-01
      • 2021-12-12
      • 1970-01-01
      • 2017-09-04
      • 2012-05-06
      • 2013-02-17
      • 2017-10-09
      • 2017-08-03
      相关资源
      最近更新 更多