Example of executing SQL in the interactive environment.
prompt> /usr/local/bin/pgbash
Welcome to Pgbash version x.x ( bash-x.x.x )
Type '?' for HELP.
Type 'connect to DB;' before executing SQL.
Type 'SQL;' to execute SQL.
Type 'exit' or 'Ctrl+D' to terminate Pgbash.
|
pgbash> ?
? : this help
?? : help pgbash usage
??h [SQL] : help SQL(or "SQL") syntax or all SQL reserved words
??e : help SQLCODE (sql ERROR code)
??f : help 'pgbashrc' FUNCTIONs for using a shell script
??o : help 'exec_sql' options
?m : show CONNECTION NAMEs
?o : show current values of exec_sql_OPTIONs
?s : show STATUS after executing SQL
?v : show PostgreSQL and pgbash VERSION
?u : list database USERs
?l : list DATABASEs
?d [rel] : list RELATIONs for table/view/index/sequence
?d{t|i|v} : list TABLEs/INDEXes/VIEWs
?dl : list LARGE_OBJECTs
?dp : list PERMISSIONs
?ds : list SEQUENCEs
?dA : list AGGREGATEs
?dD [obj] : list DESCRIPTIONs for table/type/function/operator
?dF : list FUNCTIONs
?dO : list OPERATORs
?dS : list SYSTEM_TABLEs
?dT : list data_TYPEs
E{+|-} : turn on/off ECHO_QUERY sent to the backend
Q{+|-} : turn on/off QUIET_MODE for system/sql error messages
L{+|-} : turn on/off OUTER_FRAME_print
T{+|-} : turn on/off TOP_header_print
B{+|-} : turn on/off BOTTOM_count_print
A{+|-} : turn on/off ALIGNMENT of plain text
X{+|-} : turn on/off EXPANDED format
H{+|-} : turn on/off HTML format
S+ [chr] : set SEPARATOR (e.g. ',' ) or DEFAULT('|')
N+ [str] : set NULL_STRING(e.g. '*N*') or DEFAULT('')
Z+ [str] : set ZERO_STRING(e.g. '*0*') or DEFAULT('')
O+ [str] : set TABLE TAG (e.g. 'cellpadding=4') or DEFAULT('')
_lo_import : lo_import <INPUT_FILE_NAME> <'COMMENT'>
_lo_export : lo_export <OID> <OUTPUT_FILE_NAME>
_lo_unlink : lo_unlink <OID>
_lo_list : list LARGE_OBJECTs
|
pgbash> connect to postgres user postgres;
# PostgreSQL 7.2 on i386-unknown-freebsd3.4, compiled by GCC 2.7.2.3
# CONNECT TO postgres:5432 AS db1 USER postgres
|
pgbash> ?d
[ List of relations ]
Name | Type | Owner
-----------------+----------+----------
member | table | postgres
member_log | table | postgres
member_log_view | view | postgres
member_passwd | table | postgres
member_seq | sequence | postgres
(5 rows)
|
pgbash> ?d member
[ "member" data definitions ]
Attribute | Type | NotNull | Default
-----------+-----------------------------+----------+------------
userid | integer | not null |
kind | character varying(12) | | '*'
staff | character varying(24) | | ''
name | character varying(32) | not null |
zip | character(8) | | '000-0000'
address1 | character varying(64) | not null |
address2 | character varying(64) | |
tel | character varying(16) | not null |
email | character varying(64) | |
org | character varying(128) | |
new_date | date | | 'now'
up_date | timestamp(6) with time zone | | 'now'
(12 rows)
PrimaryKey: member_pkey
Unique Key: member_tel
Index Key: member_email
Index Key: member_name
Attribute : member_kind
Constrain : (((kind = '*'::"varchar") OR (kind = 'net'::"varchar")) OR
(kind = 'post'::"varchar"))
Attribute : member_zip
Constrain : ((zip >= '000-0000'::bpchar) AND (zip <= '999-9999'::bpchar))
Rule : member_rule
Trigger : RI_ConstraintTrigger_118843
Trigger : RI_ConstraintTrigger_118845
|
pgbash> insert into member(userid,name,zip,address1,tel,email) values(
> 22, 'xxxxx11','611-2222','osaka','078-999-8888','youko@xxx.co.jp');
INSERT xxxxxxx
pgbash> insert into member(userid,name,zip,address1,tel,email) values(
> 23, 'aaaaa22','622-3333','osaka','078-888-7777','haru@aaa.co.jp');
INSERT xxxxxxx
..................
pgbash> select userid,name,zip,address1,tel,email from member;
userid | name | zip | address1 | tel | email
--------+----------+----------+----------+--------------+-----------------
22 | xxxxx11 | 611-2222 | osaka | 078-999-8888 | youko@xxx.co.jp
23 | aaaaa22 | 622-3333 | osaka | 078-888-7777 | haru@aaa.co.jp
24 | bbbbb33 | 633-4444 | kobe-shi | 078-666-5555 | nobu@bbb.co.jp
25 | cccccc | 644-5555 | kobe-shi | 06-1111-2222 | yumi@ccc.co.jp
26 | ddddd55 | 311-2222 | kobe-shi | 03-2222-3333 | miti@ddd.co.jp
(5 rows)
|
pgbash> L+
pgbash> !select
+--------+----------+----------+----------+--------------+-----------------+
| userid | name | zip | address1 | tel | email |
+--------+----------+----------+----------+--------------+-----------------+
| 22 | xxxxx11 | 611-2222 | osaka | 078-999-8888 | youko@xxx.co.jp |
| 23 | aaaaa22 | 622-3333 | osaka | 078-888-7777 | haru@aaa.co.jp |
| 24 | bbbbb33 | 633-4444 | kobe-shi | 078-666-5555 | nobu@bbb.co.jp |
| 25 | cccccc | 644-5555 | kobe-shi | 06-1111-2222 | yumi@ccc.co.jp |
| 26 | ddddd55 | 311-2222 | kobe-shi | 03-2222-3333 | miti@ddd.co.jp |
+--------+----------+----------+----------+--------------+-----------------+
(5 rows)
|
pgbash> !! | more
+--------+----------+----------+----------+--------------+-----------------+
| userid | name | zip | address1 | tel | email |
+--------+----------+----------+----------+--------------+-----------------+
| 22 | xxxxx11 | 611-2222 | osaka | 078-999-8888 | youko@xxx.co.jp |
| 23 | aaaaa22 | 622-3333 | osaka | 078-888-7777 | haru@aaa.co.jp |
| 24 | bbbbb33 | 633-4444 | kobe-shi | 078-666-5555 | nobu@bbb.co.jp |
| 25 | cccccc | 644-5555 | kobe-shi | 06-1111-2222 | yumi@ccc.co.jp |
| 26 | ddddd55 | 311-2222 | kobe-shi | 03-2222-3333 | miti@ddd.co.jp |
+--------+----------+----------+----------+--------------+-----------------+
(5 rows)
|
pgbash> select * from member ; &> /tmp/sel.dat &
pgbash> cat /tmp/sel.dat
+--------+----------+----------+----------+--------------+-----------------+
| userid | name | zip | address1 | tel | email |
+--------+----------+----------+----------+--------------+-----------------+
| 22 | xxxxx11 | 611-2222 | osaka | 078-999-8888 | youko@xxx.co.jp |
| 23 | aaaaa22 | 622-3333 | osaka | 078-888-7777 | haru@aaa.co.jp |
| 24 | bbbbb33 | 633-4444 | kobe-shi | 078-666-5555 | nobu@bbb.co.jp |
| 25 | cccccc | 644-5555 | kobe-shi | 06-1111-2222 | yumi@ccc.co.jp |
| 26 | ddddd55 | 311-2222 | kobe-shi | 03-2222-3333 | miti@ddd.co.jp |
+--------+----------+----------+----------+--------------+-----------------+
(5 rows)
|
pgbash> L-
pgbash> select * from member_log_view;
stat| userid | name | zip | address1 | tel | email
----+--------+----------+----------+----------+----------------+-----------------
| 1265 | kitamina | 555-1111 | Toyonaka | | tada@xxx.ne.jp
UP | 1265 | kitamina | 555-1111 | Toyonaka | 6666-1111,090 | tada@xxx.ne.jp
| 1252 | hota | 666-1111 | Nisinomi | 0797-61-1749 | mun@xxxxx.com
UP | 1252 | hota | 666-1111 | Nisinomi | 0797-61-1749 | mune@xxxxx.com
....................
|
pgbash> disconnect all;
pgbash> exit
prompt>
|
|