mirror of
				https://github.com/postgres/postgres.git
				synced 2025-10-29 22:49:41 +03:00 
			
		
		
		
	
		
			
				
	
	
		
			360 lines
		
	
	
		
			8.5 KiB
		
	
	
	
		
			Groff
		
	
	
	
	
	
			
		
		
	
	
			360 lines
		
	
	
		
			8.5 KiB
		
	
	
	
		
			Groff
		
	
	
	
	
	
| .\" This is -*-nroff-*-
 | |
| .\" XXX standard disclaimer belongs here....
 | |
| .\" $Header: /cvsroot/pgsql/doc/man/Attic/psql.1,v 1.1.1.1 1996/08/18 22:14:26 scrappy Exp $
 | |
| .TH PSQL UNIX 1/20/96 Postgres95 Postgres95
 | |
| .SH NAME
 | |
| psql \(em run the interactive query front-end
 | |
| .SH SYNOPSIS
 | |
| .BR psql
 | |
| [\c
 | |
| .BR "-a"
 | |
| authsvc
 | |
| ]
 | |
| [\c
 | |
| .BR "-A"
 | |
| ]
 | |
| [\c
 | |
| .BR "-c"
 | |
| query
 | |
| ]
 | |
| [\c
 | |
| .BR "-d"
 | |
| dbName]
 | |
| [\c
 | |
| .BR "-e"
 | |
| ]
 | |
| [\c
 | |
| .BR "-f"
 | |
| filename]
 | |
| [\c
 | |
| .BR "-h"
 | |
| hostname]
 | |
| [\c
 | |
| .BR "-H"
 | |
| ]
 | |
| [\c
 | |
| .BR "-l"
 | |
| port]
 | |
| [\c
 | |
| .BR "-n"
 | |
| ]
 | |
| [\c
 | |
| .BR "-o"
 | |
| filename
 | |
| ]
 | |
| [\c
 | |
| .BR "-p"
 | |
| port]
 | |
| [\c
 | |
| .BR "-q"
 | |
| ]
 | |
| [\c
 | |
| .BR "-s"
 | |
| ]
 | |
| [\c
 | |
| .BR "-S"
 | |
| ]
 | |
| [\c
 | |
| .BR "-t"
 | |
| ]
 | |
| [\c
 | |
| .BR "-x"
 | |
| ]
 | |
| [dbname]
 | |
| .in -5n
 | |
| .SH DESCRIPTION
 | |
| psql is a interactive query front-end to Postgres.  It enables you to
 | |
| type in queries interactively, issue them to Postgres, and see the query
 | |
| results.
 | |
| .IR psql
 | |
| can be used in a pipe sequence, and automatically detects when it
 | |
| is not listening or talking to a real tty.
 | |
| .IR psql
 | |
| is designed to be an enhanced version of the older
 | |
| .IR "monitor"
 | |
| program.
 | |
| .PP
 | |
| .IR "psql"
 | |
| is a frontend application, like any other.  Hence, a
 | |
| .IR "postmaster"
 | |
| process must be running on the database server host before
 | |
| .IR "psql"
 | |
| is executed.  In addition, the correct
 | |
| .IR "postmaster"
 | |
| port number must be specified
 | |
| as described below.
 | |
| .PP
 | |
| The optional argument
 | |
| .IR dbname
 | |
| specifies the name of the database to be accessed.  This database must
 | |
| already have been created.
 | |
| .IR dbname
 | |
| defaults to the value of the
 | |
| .SM USER
 | |
| environment variable or, if that's not set, to the Unix account name of the
 | |
| current user.
 | |
| .PP
 | |
| .IR "psql"
 | |
| understands the following command-line options:
 | |
| .TP
 | |
| .BR "-a" " system"
 | |
| Specifies an authentication system
 | |
| .IR "system"
 | |
| (see
 | |
| .IR introduction (1))
 | |
| to use in connecting to the
 | |
| .IR postmaster
 | |
| process.  The default is site-specific.
 | |
| .TP
 | |
| .BR "-A"
 | |
| Turn off fill justification when printing out attributes.
 | |
| .TP
 | |
| .BR "-c" " query"
 | |
| Specifies that
 | |
| .IR "psql"
 | |
| is to execute one query string,
 | |
| .IR "query" ,
 | |
| and then exit.  This is useful for shell scripts, typically in
 | |
| conjunction with the
 | |
| .BR -q ""
 | |
| options.
 | |
| .BR -c
 | |
| option in shell scripts.
 | |
| .TP
 | |
| .BR "-d" " dbName"
 | |
| Specifies the name of the database to connect to.
 | |
| .TP
 | |
| .BR "-e" " "
 | |
| Echo the query sent to the backend
 | |
| .TP
 | |
| .BR "-f" " filename"
 | |
| Use the file
 | |
| .IR "filename"
 | |
| as the source of queries instead of reading queries interactively.
 | |
| .TP
 | |
| .BR "-h" " hostname"
 | |
| Specifies the hostname of the machine on which the
 | |
| .IR postmaster
 | |
| is running.  Defaults to the name of the local host, or the value of
 | |
| the
 | |
| .SM PGHOST
 | |
| environment variable (if set).
 | |
| .TP
 | |
| .BR "-H"
 | |
| Turns on
 | |
| .SM HTML3.0
 | |
| tabular output.
 | |
| .TP
 | |
| .BR "-l"
 | |
| Lists all available databases
 | |
| .TP
 | |
| .BR "-n"
 | |
| Do not use the readline library for input line editing and command history.
 | |
| .TP
 | |
| .BR "-p" " port"
 | |
| Specifies the Internet TCP port on which the
 | |
| .IR postmaster
 | |
| is listening for connections.  Defaults to 5432, or the value of the
 | |
| .SM PGPORT
 | |
| environment variable (if set).
 | |
| .TP
 | |
| .BR "-q"
 | |
| Specifies that
 | |
| .IR psql
 | |
| should do its work quietly.  By default, it
 | |
| prints welcome and exit messages and prompts for each query, and prints
 | |
| out the number of rows returned from a query.
 | |
| If this option is used, none of this happens. This is useful with the
 | |
| .BR -c
 | |
| option in shell scripts.
 | |
| .TP
 | |
| .BR "-s"
 | |
| Run in single-step mode where the user at prompted for each query before
 | |
| it is sent to the backend.
 | |
| .TP
 | |
| .BR "-S"
 | |
| Run ins single-line mode where each query is terminated by a newline,
 | |
| instead of a semicolon.
 | |
| .TP
 | |
| .BR "-t"
 | |
| Turn off printing of attributes names.
 | |
| This is useful with the
 | |
| .BR -c
 | |
| option in shell scripts.
 | |
| .TP
 | |
| .BR "-x"
 | |
| Turns on extended field mode. When enabled each tuple will have its field
 | |
| names printed on the left with the field values printed on the right.
 | |
| This is useful for tuples which are otherwise too long to fit into
 | |
| one screen line. HTML tuple output supports this mode also.
 | |
| .PP
 | |
| You may set environment variables to avoid typing some of the above
 | |
| options.  See the
 | |
| .SM "ENVIRONMENT VARIABLES"
 | |
| section below.
 | |
| .SH "CONNECTING TO A DATABASE"
 | |
| .IR psql
 | |
| attempts to make a connection to the database at the hostname and
 | |
| port number specified on the command line.   If the connection could not
 | |
| be made for any reason (e.g. insufficient privileges, postmaster is not
 | |
| running on the server, etc)
 | |
| .IR psql
 | |
| will return an error that says
 | |
| .nf
 | |
| Connection to database failed.
 | |
| .fi
 | |
| The reason for the connection failure is not provided.
 | |
| .SH "ENTERING QUERIES"
 | |
| In normal operation, psql provides a prompt with the name of the
 | |
| database that psql is current connected to followed by the string "=>".
 | |
| For example,
 | |
| .nf
 | |
| Welcome to the POSTGRES95 interactive sql monitor:
 | |
|   Please read the file COPYRIGHT for copyright terms of POSTGRES95
 | |
| 
 | |
|    type \e? for help on slash commands
 | |
|    type \eq to quit
 | |
|    type \eg or terminate with semicolon to execute query
 | |
|  You are currently connected to the database: testdb
 | |
| 
 | |
| testdb=>
 | |
| .fi
 | |
| .PP
 | |
| At the prompt, the user may type in SQL queries.  Unless the -S option
 | |
| is set, input lines are sent to the backend when a query-terminating
 | |
| semicolon is reached.
 | |
| .PP
 | |
| Whenever a query is executed, psql also polls for asynchronous notification
 | |
| events generated by
 | |
| .IR listen (l)
 | |
| and
 | |
| .IR notify (l).
 | |
| .PP
 | |
| .SH "PSQL COMMANDS"
 | |
| .IP "\ea"
 | |
| Toggle field alignment when printing out attributes.
 | |
| .IP "\eC \fIcaption\fR"
 | |
| Set the HTML3.0 table caption.
 | |
| .IP "\ec \fIdbname\fR"
 | |
| Establish a connection to a new database. The previous connection is closed.
 | |
| .IP "\ed [\fItable\fR]"
 | |
| List tables in the database, or if
 | |
| .IR table
 | |
| is specified, list the columns in
 | |
| .IR table.
 | |
| If table name is
 | |
| .IR *,
 | |
| list all tables and column information for each tables.
 | |
| .IP "\ee [\fIfilename\fR]"
 | |
| Edit the current query buffer or \fIfile\fR.
 | |
| .IP "\eE [\fIfilename\fR]"
 | |
| Edit the current query buffer or \fIfile\fR and execute it
 | |
| upon editor exit.
 | |
| .IP "\ef [\fIseparator\fR]"
 | |
| Set the field separator.  Default is a single blank space.
 | |
| .IP "\eg [\fI|command\fR] | [\fIfilename\fR]"
 | |
| Send the current query input buffer to the backend and optionally
 | |
| save the output in
 | |
| .IR filename
 | |
| or pipe the output into
 | |
| .IR "|command".
 | |
| .IP "\eh [\fIcommand\fR]"
 | |
| Give syntax help on the specified SQL command.  If the
 | |
| .IR command
 | |
| is not specified, list all the commands for which syntax help is
 | |
| available.  If the
 | |
| .IR command
 | |
| is
 | |
| .IR *,
 | |
| give syntax help on all SQL commands.
 | |
| .IP "\eH"
 | |
| Toggle html3 output.
 | |
| .IP "\ei \fIfilename\fR"
 | |
| Read queries from
 | |
| .IR filename
 | |
| into the query input buffer.
 | |
| .IP "\el"
 | |
| List all the databases in the server.
 | |
| .IP "\em"
 | |
| Toggle monitor-like table display.
 | |
| This is standard SQL output (i.e extra border characters).
 | |
| .IP "\eo [\fI|command\fR] | [\fIfilename\fR]"
 | |
| Send query results to
 | |
| .IR filename .
 | |
| Or pipe into
 | |
| .IR command .
 | |
| If no arguments are specified, send query results to
 | |
| .IR stdout .
 | |
| .IP "\ep"
 | |
| Print the current query buffer.
 | |
| .IP \eq
 | |
| Quit the psql program.
 | |
| .IP "\er"
 | |
| Reset(clear) the query buffer.
 | |
| .IP "\es [\fIfilename\fR]"
 | |
| Print or save the command line history to \fIfilename\fR.  (Only available if psql is
 | |
| configured to use readline)
 | |
| .IP "\et"
 | |
| Toggle display of output attribute name headings and row count (defaults to on).
 | |
| .IP "\eT"
 | |
| Set html3.0 <table ...> options.
 | |
| .IP "\ex"
 | |
| Toggles extended field mode. When enabled each tuple will have its field
 | |
| names printed on the left with the field values printed on the right.
 | |
| This is useful for tuples which are otherwise too long to fit into
 | |
| one screen line. HTML tuple output mode supports this flag too.
 | |
| .IP "\e! [\fIcommand\fR]"
 | |
| Escape to shell or execute
 | |
| .IR command.
 | |
| .IP \e?
 | |
| Get help information about the \e commands.
 | |
| .SH "ENVIRONMENT VARIABLES"
 | |
| You may set any of the following environment variables to avoid
 | |
| specifying command-line options:
 | |
| .nf
 | |
| hostname:	PGHOST
 | |
| port:		PGPORT
 | |
| tty:		PGTTY
 | |
| options:		PGOPTION
 | |
| realm:		PGREALM
 | |
| .fi
 | |
| .PP
 | |
| If
 | |
| .SM PGOPTION
 | |
| is specified, then the options it contains are parsed
 | |
| .BR before
 | |
| any command-line options.
 | |
| .PP
 | |
| .SM PGREALM
 | |
| only applies if
 | |
| .IR Kerberos
 | |
| authentication is in use.  If this environment variable is set, Postgres
 | |
| will attempt authentication with servers for this realm and use
 | |
| separate ticket files to avoid conflicts with local ticket files.  See
 | |
| .IR introduction (1)
 | |
| for additional information on
 | |
| .IR Kerberos .
 | |
| .PP
 | |
| See
 | |
| .IR introduction (libpq)
 | |
| for additional details.
 | |
| .SH "RETURN VALUE"
 | |
| When executed with the
 | |
| .BR "-c"
 | |
| option,
 | |
| .IR psql
 | |
| returns 0 to the shell on successful query completion, 1 otherwise.
 | |
| .IR psql
 | |
| will also return 1 if the connection to a database could not be made for
 | |
| any reason.
 | |
| .SH "SEE ALSO"
 | |
| introduction(libpq),
 | |
| monitor(1)
 | |
| postgres(1),
 | |
| postmaster(1).
 | |
| .SH BUGS
 | |
| If multiple queries are sent to the backend at once without semicolon
 | |
| termination after each query, psql gets confused about the query
 | |
| results.  The queries will still be processed correctly by the backend.
 | |
| 
 |