论坛首页 综合技术论坛

访问数据库postgresql

浏览 2467 次
精华帖 (0) :: 良好帖 (0) :: 新手帖 (1) :: 隐藏帖 (0)
作者 正文
   发表时间:2010-02-04   最后修改:2011-04-24

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

 

 

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

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

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

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

$ psql mydb

如果你省略了数据库名字,那么它缺省就是你的用户账号名字。 你已经在前面的小节里知道这个大纲了。

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

Welcome to psql 8.1, the PostgreSQL interactive terminal.

Type:  \copyright for distribution terms
       \h for help with SQL commands
       \? for help with psql commands
       \g or terminate with semicolon to execute query
       \q to quit

mydb=>

最后一行也可能是

mydb=#

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

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

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

mydb=> SELECT version();
                            version
----------------------------------------------------------------
 PostgreSQL 8.1 on i586-pc-linux-gnu, compiled by GCC 2.96
(1 row)
mydb=> SELECT current_date;
    date
------------
 2002-08-31
(1 row)

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

 

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

mydb=> \h

 

要退出 psql,键入

mydb=> \q

然后 psql 就会退出并且给你返回到命令行 shell。 (要获取更多有关内部命令的信息,你可以在 psql 提示符上键入 \?。) psql 的完整功能在 Part VI 中有文档。如果 PostgreSQL 安装正确,那么你还可以在操作系统的 shell 提示符上键入 man psql 来阅读该文档。在这份文档里,我们将不会明确使用这些特性,但是你自己可以在合适的时候使用它们。

笔者实际操作如下:

mydb=# select version();
                           version
-------------------------------------------------------------
 PostgreSQL 8.4.2, compiled by Visual C++ build 1400, 32-bit
(1 row)


mydb=# SELECT current_date;
    date
------------
 2010-02-04
(1 row)


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


mydb=# \h
Available help:
  ABORT                            DELETE
  ALTER AGGREGATE                  DISCARD
  ALTER CONVERSION                 DROP AGGREGATE
  ALTER DATABASE                   DROP CAST
  ALTER DOMAIN                     DROP CONVERSION
  ALTER FOREIGN DATA WRAPPER       DROP DATABASE
  ALTER FUNCTION                   DROP DOMAIN
  ALTER GROUP                      DROP FOREIGN DATA WRAPPER
  ALTER INDEX                      DROP FUNCTION
  ALTER LANGUAGE                   DROP GROUP
  ALTER OPERATOR                   DROP INDEX
  ALTER OPERATOR CLASS             DROP LANGUAGE
  ALTER OPERATOR FAMILY            DROP OPERATOR
  ALTER ROLE                       DROP OPERATOR CLASS
  ALTER SCHEMA                     DROP OPERATOR FAMILY
  ALTER SEQUENCE                   DROP OWNED
  ALTER SERVER                     DROP ROLE
  ALTER TABLE                      DROP RULE
  ALTER TABLESPACE                 DROP SCHEMA
  ALTER TEXT SEARCH CONFIGURATION  DROP SEQUENCE
  ALTER TEXT SEARCH DICTIONARY     DROP SERVER
  ALTER TEXT SEARCH PARSER         DROP TABLE
  ALTER TEXT SEARCH TEMPLATE       DROP TABLESPACE
  ALTER TRIGGER                    DROP TEXT SEARCH CONFIGURATION
  ALTER TYPE                       DROP TEXT SEARCH DICTIONARY
  ALTER USER                       DROP TEXT SEARCH PARSER
  ALTER USER MAPPING               DROP TEXT SEARCH TEMPLATE
  ALTER VIEW                       DROP TRIGGER
  ANALYZE                          DROP TYPE
  BEGIN                            DROP USER
  CHECKPOINT                       DROP USER MAPPING
  CLOSE                            DROP VIEW
  CLUSTER                          END
  COMMENT                          EXECUTE
  COMMIT                           EXPLAIN
  COMMIT PREPARED                  FETCH
  COPY                             GRANT
  CREATE AGGREGATE                 INSERT
  CREATE CAST                      LISTEN
  CREATE CONSTRAINT TRIGGER        LOAD
  CREATE CONVERSION                LOCK
  CREATE DATABASE                  MOVE
  CREATE DOMAIN                    NOTIFY
  CREATE FOREIGN DATA WRAPPER      PREPARE
  CREATE FUNCTION                  PREPARE TRANSACTION
  CREATE GROUP                     REASSIGN OWNED
  CREATE INDEX                     REINDEX
  CREATE LANGUAGE                  RELEASE SAVEPOINT
  CREATE OPERATOR                  RESET
  CREATE OPERATOR CLASS            REVOKE
  CREATE OPERATOR FAMILY           ROLLBACK
  CREATE ROLE                      ROLLBACK PREPARED
  CREATE RULE                      ROLLBACK TO SAVEPOINT
  CREATE SCHEMA                    SAVEPOINT
  CREATE SEQUENCE                  SELECT
  CREATE SERVER                    SELECT INTO
  CREATE TABLE                     SET
  CREATE TABLE AS                  SET CONSTRAINTS
  CREATE TABLESPACE                SET ROLE
  CREATE TEXT SEARCH CONFIGURATION SET SESSION AUTHORIZATION
  CREATE TEXT SEARCH DICTIONARY    SET TRANSACTION
  CREATE TEXT SEARCH PARSER        SHOW
  CREATE TEXT SEARCH TEMPLATE      START TRANSACTION
  CREATE TRIGGER                   TABLE
  CREATE TYPE                      TRUNCATE
  CREATE USER                      UNLISTEN
  CREATE USER MAPPING              UPDATE
  CREATE VIEW                      VACUUM
  DEALLOCATE                       VALUES
  DECLARE                          WITH

mydb=# \q

D:\pgsql>

论坛首页 综合技术版

跳转论坛:
Global site tag (gtag.js) - Google Analytics