↑↓ select ↵ open ⌫ change scope Open full search

PG.CENTER connects PostgreSQL documentation, reference, and ecosystem knowledge. Maintained by Pigsty.

SQL Commands / Version comparison

What changed?

SQL Commands · PostgreSQL 7.3 → 7.4

Browse PG 7.4

Historical documentation for a PostgreSQL version that is no longer supported.

8 added · 0 removed · 73 changed · 0 coverage changes. These are changes between the pinned reference snapshots.

changedCREATE SEQUENCE
--- 7.3
+++ 7.4
@@ -1,3 +1,3 @@
-CREATE [ TEMPORARY | TEMP ] SEQUENCE seqname [ INCREMENT increment ]
-[ MINVALUE minvalue ] [ MAXVALUE maxvalue ]
-[ START start ] [ CACHE cache ] [ CYCLE ]
+CREATE [ TEMPORARY | TEMP ] SEQUENCE name [ INCREMENT [ BY ] increment ]
+[ MINVALUE minvalue | NO MINVALUE ] [ MAXVALUE maxvalue | NO MAXVALUE ]
+[ START [ WITH ] start ] [ CACHE cache ] [ [ NO ] CYCLE ]
addedALTER SEQUENCE
--- 7.3
+++ 7.4
@@ -0,0 +1,3 @@
+ALTER SEQUENCE name [ INCREMENT [ BY ] increment ]
+[ MINVALUE minvalue | NO MINVALUE ] [ MAXVALUE maxvalue | NO MAXVALUE ]
+[ RESTART [ WITH ] start ] [ CACHE cache ] [ [ NO ] CYCLE ]
changedDROP SEQUENCE
--- 7.3
+++ 7.4
@@ -1,2 +1 @@
 DROP SEQUENCE name [, ...] [ CASCADE | RESTRICT ]
-
changedCREATE TABLE
--- 7.3
+++ 7.4
@@ -1,16 +1,18 @@
-CREATE [ [ LOCAL ] { TEMPORARY | TEMP } ] TABLE table_name (
-{ column_name data_type [ DEFAULT default_expr ] [ column_constraint [, ... ] ]
-| table_constraint } [, ... ]
+CREATE [ [ GLOBAL | LOCAL ] { TEMPORARY | TEMP } ] TABLE table_name (
+{ column_name data_type [ DEFAULT default_expr ] [ column_constraint [ ... ] ]
+| table_constraint
+| LIKE parent_table [ { INCLUDING | EXCLUDING } DEFAULTS ] } [, ... ]
 )
 [ INHERITS ( parent_table [, ... ] ) ]
 [ WITH OIDS | WITHOUT OIDS ]
+[ ON COMMIT { PRESERVE ROWS | DELETE ROWS | DROP } ]
 
 where column_constraint is:
 
 [ CONSTRAINT constraint_name ]
 { NOT NULL | NULL | UNIQUE | PRIMARY KEY |
 CHECK (expression) |
-REFERENCES reftable [ ( refcolumn ) ] [ MATCH FULL | MATCH PARTIAL ]
+REFERENCES reftable [ ( refcolumn ) ] [ MATCH FULL | MATCH PARTIAL | MATCH SIMPLE ]
 [ ON DELETE action ] [ ON UPDATE action ] }
 [ DEFERRABLE | NOT DEFERRABLE ] [ INITIALLY DEFERRED | INITIALLY IMMEDIATE ]
 
@@ -21,5 +23,5 @@
 PRIMARY KEY ( column_name [, ... ] ) |
 CHECK ( expression ) |
 FOREIGN KEY ( column_name [, ... ] ) REFERENCES reftable [ ( refcolumn [, ... ] ) ]
-[ MATCH FULL | MATCH PARTIAL ] [ ON DELETE action ] [ ON UPDATE action ] }
+[ MATCH FULL | MATCH PARTIAL | MATCH SIMPLE ] [ ON DELETE action ] [ ON UPDATE action ] }
 [ DEFERRABLE | NOT DEFERRABLE ] [ INITIALLY DEFERRED | INITIALLY IMMEDIATE ]
changedALTER TABLE
--- 7.3
+++ 7.4
@@ -1,22 +1,26 @@
-ALTER TABLE [ ONLY ] table [ * ]
+ALTER TABLE [ ONLY ] name [ * ]
 ADD [ COLUMN ] column type [ column_constraint [ ... ] ]
-ALTER TABLE [ ONLY ] table [ * ]
+ALTER TABLE [ ONLY ] name [ * ]
 DROP [ COLUMN ] column [ RESTRICT | CASCADE ]
-ALTER TABLE [ ONLY ] table [ * ]
-ALTER [ COLUMN ] column { SET DEFAULT value | DROP DEFAULT }
-ALTER TABLE [ ONLY ] table [ * ]
+ALTER TABLE [ ONLY ] name [ * ]
+ALTER [ COLUMN ] column { SET DEFAULT expression | DROP DEFAULT }
+ALTER TABLE [ ONLY ] name [ * ]
 ALTER [ COLUMN ] column { SET | DROP } NOT NULL
-ALTER TABLE [ ONLY ] table [ * ]
+ALTER TABLE [ ONLY ] name [ * ]
 ALTER [ COLUMN ] column SET STATISTICS integer
-ALTER TABLE [ ONLY ] table [ * ]
+ALTER TABLE [ ONLY ] name [ * ]
 ALTER [ COLUMN ] column SET STORAGE { PLAIN | EXTERNAL | EXTENDED | MAIN }
-ALTER TABLE [ ONLY ] table [ * ]
+ALTER TABLE [ ONLY ] name [ * ]
+SET WITHOUT OIDS
+ALTER TABLE [ ONLY ] name [ * ]
 RENAME [ COLUMN ] column TO new_column
-ALTER TABLE table
-RENAME TO new_table
-ALTER TABLE [ ONLY ] table [ * ]
+ALTER TABLE name
+RENAME TO new_name
+ALTER TABLE [ ONLY ] name [ * ]
 ADD table_constraint
-ALTER TABLE [ ONLY ] table [ * ]
+ALTER TABLE [ ONLY ] name [ * ]
 DROP CONSTRAINT constraint_name [ RESTRICT | CASCADE ]
-ALTER TABLE table
+ALTER TABLE name
 OWNER TO new_owner
+ALTER TABLE name
+CLUSTER ON index_name
changedDROP TABLE
--- 7.3
+++ 7.4
@@ -1,2 +1 @@
 DROP TABLE name [, ...] [ CASCADE | RESTRICT ]
-
changedCREATE TABLE AS
--- 7.3
+++ 7.4
@@ -1,2 +1,2 @@
-CREATE [ [ LOCAL ] { TEMPORARY | TEMP } ] TABLE table_name [ (column_name [, ...] ) ]
+CREATE [ [ GLOBAL | LOCAL ] { TEMPORARY | TEMP } ] TABLE table_name [ (column_name [, ...] ) ]
 AS query
changedCREATE VIEW
--- 7.3
+++ 7.4
@@ -1 +1 @@
-CREATE [ OR REPLACE ] VIEW view [ ( column name list ) ] AS SELECT query
+CREATE [ OR REPLACE ] VIEW name [ ( column_name [, ...] ) ] AS query
changedDROP VIEW

  
changedREINDEX
--- 7.3
+++ 7.4
@@ -1 +1 @@
-REINDEX { TABLE | DATABASE | INDEX } name [ FORCE ]
+REINDEX { DATABASE | TABLE | INDEX } name [ FORCE ]
changedCREATE INDEX
--- 7.3
+++ 7.4
@@ -1,6 +1,3 @@
-CREATE [ UNIQUE ] INDEX index_name ON table
-[ USING acc_method ] ( column [ ops_name ] [, ...] )
+CREATE [ UNIQUE ] INDEX name ON table [ USING method ]
+( { column | ( expression ) } [ opclass ] [, ...] )
 [ WHERE predicate ]
-CREATE [ UNIQUE ] INDEX index_name ON table
-[ USING acc_method ] ( func_name( column [, ... ]) [ ops_name ] )
-[ WHERE predicate ]
changedDROP INDEX
--- 7.3
+++ 7.4
@@ -1 +1 @@
-DROP INDEX index_name [, ...] [ CASCADE | RESTRICT ]
+DROP INDEX name [, ...] [ CASCADE | RESTRICT ]
changedCREATE AGGREGATE
--- 7.3
+++ 7.4
@@ -1,4 +1,7 @@
-CREATE AGGREGATE name ( BASETYPE = input_data_type,
-SFUNC = sfunc, STYPE = state_type
+CREATE AGGREGATE name (
+BASETYPE = input_data_type,
+SFUNC = sfunc,
+STYPE = state_data_type
 [ , FINALFUNC = ffunc ]
-[ , INITCOND = initial_condition ] )
+[ , INITCOND = initial_condition ]
+)
addedALTER AGGREGATE
--- 7.3
+++ 7.4
@@ -0,0 +1 @@
+ALTER AGGREGATE name ( type ) RENAME TO newname
changedDROP AGGREGATE

  
addedALTER FUNCTION
--- 7.3
+++ 7.4
@@ -0,0 +1 @@
+ALTER FUNCTION name ( [ type [, ...] ] ) RENAME TO newname
changedDROP FUNCTION

  
changedCREATE LANGUAGE
--- 7.3
+++ 7.4
@@ -1,2 +1,2 @@
-CREATE [ TRUSTED ] [ PROCEDURAL ] LANGUAGE langname
+CREATE [ TRUSTED ] [ PROCEDURAL ] LANGUAGE name
 HANDLER call_handler [ VALIDATOR valfunction ]
addedALTER LANGUAGE
--- 7.3
+++ 7.4
@@ -0,0 +1 @@
+ALTER LANGUAGE name RENAME TO newname
changedDROP LANGUAGE

  
changedDROP CAST
--- 7.3
+++ 7.4
@@ -1,2 +1 @@
-DROP CAST (sourcetype AS targettype)
-[ CASCADE | RESTRICT ]
+DROP CAST (sourcetype AS targettype) [ CASCADE | RESTRICT ]
changedCREATE CONVERSION
--- 7.3
+++ 7.4
@@ -1,2 +1,2 @@
-CREATE [DEFAULT] CONVERSION conversion_name
+CREATE [DEFAULT] CONVERSION name
 FOR source_encoding TO dest_encoding FROM funcname
addedALTER CONVERSION
--- 7.3
+++ 7.4
@@ -0,0 +1 @@
+ALTER CONVERSION name RENAME TO newname
changedDROP CONVERSION
--- 7.3
+++ 7.4
@@ -1,2 +1 @@
-DROP CONVERSION conversion_name
-[ CASCADE | RESTRICT ]
+DROP CONVERSION name [ CASCADE | RESTRICT ]
changedCREATE DOMAIN
--- 7.3
+++ 7.4
@@ -1,8 +1,8 @@
-CREATE DOMAIN domainname [AS] data_type
-[ DEFAULT default_expr ]
+CREATE DOMAIN name [AS] data_type
+[ DEFAULT expression ]
 [ constraint [ ... ] ]
 
 where constraint is:
 
 [ CONSTRAINT constraint_name ]
-{ NOT NULL | NULL }
+{ NOT NULL | NULL | CHECK (expression) }
addedALTER DOMAIN
--- 7.3
+++ 7.4
@@ -0,0 +1,10 @@
+ALTER DOMAIN name
+{ SET DEFAULT expression | DROP DEFAULT }
+ALTER DOMAIN name
+{ SET | DROP } NOT NULL
+ALTER DOMAIN name
+ADD domain_constraint
+ALTER DOMAIN name
+DROP CONSTRAINT constraint_name [ RESTRICT | CASCADE ]
+ALTER DOMAIN name
+OWNER TO new_owner
changedDROP DOMAIN
--- 7.3
+++ 7.4
@@ -1 +1 @@
-DROP DOMAIN domainname [, ...] [ CASCADE | RESTRICT ]
+DROP DOMAIN name [, ...] [ CASCADE | RESTRICT ]
changedCREATE OPERATOR
--- 7.3
+++ 7.4
@@ -1,8 +1,9 @@
-CREATE OPERATOR name ( PROCEDURE = func_name
-[, LEFTARG = lefttype
-] [, RIGHTARG = righttype ]
+CREATE OPERATOR name (
+PROCEDURE = funcname
+[, LEFTARG = lefttype ] [, RIGHTARG = righttype ]
 [, COMMUTATOR = com_op ] [, NEGATOR = neg_op ]
 [, RESTRICT = res_proc ] [, JOIN = join_proc ]
 [, HASHES ] [, MERGES ]
 [, SORT1 = left_sort_op ] [, SORT2 = right_sort_op ]
-[, LTCMP = less_than_op ] [, GTCMP = greater_than_op ] )
+[, LTCMP = less_than_op ] [, GTCMP = greater_than_op ]
+)
changedDROP OPERATOR
--- 7.3
+++ 7.4
@@ -1 +1 @@
-DROP OPERATOR id ( lefttype | NONE , righttype | NONE ) [ CASCADE | RESTRICT ]
+DROP OPERATOR name ( lefttype | NONE , righttype | NONE ) [ CASCADE | RESTRICT ]
changedCREATE OPERATOR CLASS
--- 7.3
+++ 7.4
@@ -1,5 +1,5 @@
-CREATE OPERATOR CLASS name [ DEFAULT ] FOR TYPE data_type USING access_method AS
-{ OPERATOR strategy_number operator_id [ ( type, type ) ] [ RECHECK ]
-| FUNCTION support_number func_name ( parameter_types )
+CREATE OPERATOR CLASS name [ DEFAULT ] FOR TYPE data_type USING index_method AS
+{ OPERATOR strategy_number operator_name [ ( op_type, op_type ) ] [ RECHECK ]
+| FUNCTION support_number funcname ( argument_type [, ...] )
 | STORAGE storage_type
 } [, ... ]
addedALTER OPERATOR CLASS
--- 7.3
+++ 7.4
@@ -0,0 +1 @@
+ALTER OPERATOR CLASS name USING index_method RENAME TO newname
changedDROP OPERATOR CLASS
--- 7.3
+++ 7.4
@@ -1 +1 @@
-DROP OPERATOR CLASS name USING access_method [ CASCADE | RESTRICT ]
+DROP OPERATOR CLASS name USING index_method [ CASCADE | RESTRICT ]
changedCREATE TYPE
--- 7.3
+++ 7.4
@@ -1,11 +1,16 @@
-CREATE TYPE typename ( INPUT = input_function, OUTPUT = output_function
-, INTERNALLENGTH = { internallength | VARIABLE }
-[ , DEFAULT = default ]
-[ , ELEMENT = element ] [ , DELIMITER = delimiter ]
+CREATE TYPE name AS
+( attribute_name data_type [, ... ] )
+
+CREATE TYPE name (
+INPUT = input_function,
+OUTPUT = output_function
+[ , RECEIVE = receive_function ]
+[ , SEND = send_function ]
+[ , INTERNALLENGTH = { internallength | VARIABLE } ]
 [ , PASSEDBYVALUE ]
 [ , ALIGNMENT = alignment ]
 [ , STORAGE = storage ]
+[ , DEFAULT = default ]
+[ , ELEMENT = element ]
+[ , DELIMITER = delimiter ]
 )
-
-CREATE TYPE typename AS
-( column_name data_type [, ... ] )
changedDROP TYPE
--- 7.3
+++ 7.4
@@ -1,2 +1 @@
-DROP TYPE typename [, ...] [ CASCADE | RESTRICT ]
-
+DROP TYPE name [, ...] [ CASCADE | RESTRICT ]
changedCREATE DATABASE

  
changedALTER DATABASE
--- 7.3
+++ 7.4
@@ -1,2 +1,4 @@
-ALTER DATABASE name SET variable { TO | = } { value | DEFAULT }
-ALTER DATABASE name RESET variable
+ALTER DATABASE name SET parameter { TO | = } { value | DEFAULT }
+ALTER DATABASE name RESET parameter
+
+ALTER DATABASE name RENAME TO newname
changedCREATE SCHEMA

  
addedALTER SCHEMA
--- 7.3
+++ 7.4
@@ -0,0 +1 @@
+ALTER SCHEMA name RENAME TO newname
changedDROP SCHEMA
--- 7.3
+++ 7.4
@@ -1,2 +1 @@
 DROP SCHEMA name [, ...] [ CASCADE | RESTRICT ]
-
changedGRANT
--- 7.3
+++ 7.4
@@ -1,20 +1,20 @@
 GRANT { { SELECT | INSERT | UPDATE | DELETE | RULE | REFERENCES | TRIGGER }
 [,...] | ALL [ PRIVILEGES ] }
 ON [ TABLE ] tablename [, ...]
-TO { username | GROUP groupname | PUBLIC } [, ...]
+TO { username | GROUP groupname | PUBLIC } [, ...] [ WITH GRANT OPTION ]
 
 GRANT { { CREATE | TEMPORARY | TEMP } [,...] | ALL [ PRIVILEGES ] }
 ON DATABASE dbname [, ...]
-TO { username | GROUP groupname | PUBLIC } [, ...]
+TO { username | GROUP groupname | PUBLIC } [, ...] [ WITH GRANT OPTION ]
 
 GRANT { EXECUTE | ALL [ PRIVILEGES ] }
 ON FUNCTION funcname ([type, ...]) [, ...]
-TO { username | GROUP groupname | PUBLIC } [, ...]
+TO { username | GROUP groupname | PUBLIC } [, ...] [ WITH GRANT OPTION ]
 
 GRANT { USAGE | ALL [ PRIVILEGES ] }
 ON LANGUAGE langname [, ...]
-TO { username | GROUP groupname | PUBLIC } [, ...]
+TO { username | GROUP groupname | PUBLIC } [, ...] [ WITH GRANT OPTION ]
 
 GRANT { { CREATE | USAGE } [,...] | ALL [ PRIVILEGES ] }
 ON SCHEMA schemaname [, ...]
-TO { username | GROUP groupname | PUBLIC } [, ...]
+TO { username | GROUP groupname | PUBLIC } [, ...] [ WITH GRANT OPTION ]
changedREVOKE
--- 7.3
+++ 7.4
@@ -1,20 +1,30 @@
-REVOKE { { SELECT | INSERT | UPDATE | DELETE | RULE | REFERENCES | TRIGGER }
+REVOKE [ GRANT OPTION FOR ]
+{ { SELECT | INSERT | UPDATE | DELETE | RULE | REFERENCES | TRIGGER }
 [,...] | ALL [ PRIVILEGES ] }
 ON [ TABLE ] tablename [, ...]
 FROM { username | GROUP groupname | PUBLIC } [, ...]
+[ CASCADE | RESTRICT ]
 
-REVOKE { { CREATE | TEMPORARY | TEMP } [,...] | ALL [ PRIVILEGES ] }
+REVOKE [ GRANT OPTION FOR ]
+{ { CREATE | TEMPORARY | TEMP } [,...] | ALL [ PRIVILEGES ] }
 ON DATABASE dbname [, ...]
 FROM { username | GROUP groupname | PUBLIC } [, ...]
+[ CASCADE | RESTRICT ]
 
-REVOKE { EXECUTE | ALL [ PRIVILEGES ] }
+REVOKE [ GRANT OPTION FOR ]
+{ EXECUTE | ALL [ PRIVILEGES ] }
 ON FUNCTION funcname ([type, ...]) [, ...]
 FROM { username | GROUP groupname | PUBLIC } [, ...]
+[ CASCADE | RESTRICT ]
 
-REVOKE { USAGE | ALL [ PRIVILEGES ] }
+REVOKE [ GRANT OPTION FOR ]
+{ USAGE | ALL [ PRIVILEGES ] }
 ON LANGUAGE langname [, ...]
 FROM { username | GROUP groupname | PUBLIC } [, ...]
+[ CASCADE | RESTRICT ]
 
-REVOKE { { CREATE | USAGE } [,...] | ALL [ PRIVILEGES ] }
+REVOKE [ GRANT OPTION FOR ]
+{ { CREATE | USAGE } [,...] | ALL [ PRIVILEGES ] }
 ON SCHEMA schemaname [, ...]
 FROM { username | GROUP groupname | PUBLIC } [, ...]
+[ CASCADE | RESTRICT ]
changedCREATE GROUP

  
changedALTER GROUP
--- 7.3
+++ 7.4
@@ -1,2 +1,4 @@
-ALTER GROUP name ADD USER username [, ... ]
-ALTER GROUP name DROP USER username [, ... ]
+ALTER GROUP groupname ADD USER username [, ... ]
+ALTER GROUP groupname DROP USER username [, ... ]
+
+ALTER GROUP groupname RENAME TO newname
changedCREATE USER
--- 7.3
+++ 7.4
@@ -1,4 +1,4 @@
-CREATE USER username [ [ WITH ] option [ ... ] ]
+CREATE USER name [ [ WITH ] option [ ... ] ]
 
 where option can be:
 
changedALTER USER
--- 7.3
+++ 7.4
@@ -1,4 +1,4 @@
-ALTER USER username [ [ WITH ] option [ ... ] ]
+ALTER USER name [ [ WITH ] option [ ... ] ]
 
 where option can be:
 
@@ -7,5 +7,7 @@
 | CREATEUSER | NOCREATEUSER
 | VALID UNTIL 'abstime'
 
-ALTER USER username SET variable { TO | = } { value | DEFAULT }
-ALTER USER username RESET variable
+ALTER USER name RENAME TO newname
+
+ALTER USER name SET parameter { TO | = } { value | DEFAULT }
+ALTER USER name RESET parameter
changedCREATE CONSTRAINT TRIGGER
--- 7.3
+++ 7.4
@@ -1,4 +1,4 @@
 CREATE CONSTRAINT TRIGGER name
 AFTER events ON
-relation constraint attributes
-FOR EACH ROW EXECUTE PROCEDURE func '(' args ')'
+tablename constraint attributes
+FOR EACH ROW EXECUTE PROCEDURE funcname ( args )
changedCREATE RULE
--- 7.3
+++ 7.4
@@ -1,9 +1,3 @@
 CREATE [ OR REPLACE ] RULE name AS ON event
 TO table [ WHERE condition ]
-DO [ INSTEAD ] action
-
-where action can be:
-
-NOTHING
-| query
-| ( query ; query ... )
+DO [ INSTEAD ] { NOTHING | command | ( command ; command ... ) }
changedDROP RULE

  
changedCREATE TRIGGER
--- 7.3
+++ 7.4
@@ -1,3 +1,3 @@
-CREATE TRIGGER name { BEFORE | AFTER } { event [OR ...] }
-ON table FOR EACH { ROW | STATEMENT }
-EXECUTE PROCEDURE func ( arguments )
+CREATE TRIGGER name { BEFORE | AFTER } { event [ OR ... ] }
+ON table [ FOR [ EACH ] { ROW | STATEMENT } ]
+EXECUTE PROCEDURE funcname ( arguments )
changedALTER TRIGGER
--- 7.3
+++ 7.4
@@ -1,2 +1 @@
-ALTER TRIGGER trigger ON table
-RENAME TO newname
+ALTER TRIGGER name ON table RENAME TO newname
changedDROP TRIGGER

  
changedCOPY
--- 7.3
+++ 7.4
@@ -1,12 +1,13 @@
-COPY table [ ( column [, ...] ) ]
-FROM { 'filename' | stdin }
+COPY tablename [ ( column [, ...] ) ]
+FROM { 'filename' | STDIN }
 [ [ WITH ]
 [ BINARY ]
 [ OIDS ]
 [ DELIMITER [ AS ] 'delimiter' ]
 [ NULL [ AS ] 'null string' ] ]
-COPY table [ ( column [, ...] ) ]
-TO { 'filename' | stdout }
+
+COPY tablename [ ( column [, ...] ) ]
+TO { 'filename' | STDOUT }
 [ [ WITH ]
 [ BINARY ]
 [ OIDS ]
changedDELETE

  
changedEXPLAIN
--- 7.3
+++ 7.4
@@ -1 +1 @@
-EXPLAIN [ ANALYZE ] [ VERBOSE ] query
+EXPLAIN [ ANALYZE ] [ VERBOSE ] statement
changedINSERT
--- 7.3
+++ 7.4
@@ -1,2 +1,2 @@
 INSERT INTO table [ ( column [, ...] ) ]
-{ DEFAULT VALUES | VALUES ( { expression | DEFAULT } [, ...] ) | SELECT query }
+{ DEFAULT VALUES | VALUES ( { expression | DEFAULT } [, ...] ) | query }
changedLOCK
--- 7.3
+++ 7.4
@@ -1,7 +1,6 @@
-LOCK [ TABLE ] name [, ...]
-LOCK [ TABLE ] name [, ...] IN lockmode MODE
+LOCK [ TABLE ] name [, ...] [ IN lockmode MODE ]
 
 where lockmode is one of:
 
-ACCESS SHARE | ROW SHARE | ROW EXCLUSIVE | SHARE UPDATE EXCLUSIVE |
-SHARE | SHARE ROW EXCLUSIVE | EXCLUSIVE | ACCESS EXCLUSIVE
+ACCESS SHARE | ROW SHARE | ROW EXCLUSIVE | SHARE UPDATE EXCLUSIVE
+| SHARE | SHARE ROW EXCLUSIVE | EXCLUSIVE | ACCESS EXCLUSIVE
changedSELECT
--- 7.3
+++ 7.4
@@ -8,21 +8,12 @@
 [ ORDER BY expression [ ASC | DESC | USING operator ] [, ...] ]
 [ LIMIT { count | ALL } ]
 [ OFFSET start ]
-[ FOR UPDATE [ OF tablename [, ...] ] ]
+[ FOR UPDATE [ OF table_name [, ...] ] ]
 
-where from_item can be:
+where from_item can be one of:
 
-[ ONLY ] table_name [ * ]
-[ [ AS ] alias [ ( column_alias_list ) ] ]
-|
-( select )
-[ AS ] alias [ ( column_alias_list ) ]
-|
-table_function_name ( [ argument [, ...] ] )
-[ AS ] alias [ ( column_alias_list | column_definition_list ) ]
-|
-table_function_name ( [ argument [, ...] ] )
-AS ( column_definition_list )
-|
-from_item [ NATURAL ] join_type from_item
-[ ON join_condition | USING ( join_column_list ) ]
+[ ONLY ] table_name [ * ] [ [ AS ] alias [ ( column_alias [, ...] ) ] ]
+( select ) [ AS ] alias [ ( column_alias [, ...] ) ]
+function_name ( [ argument [, ...] ] ) [ AS ] alias [ ( column_alias [, ...] | column_definition [, ...] ) ]
+function_name ( [ argument [, ...] ] ) AS ( column_definition [, ...] )
+from_item [ NATURAL ] join_type from_item [ ON join_condition | USING ( join_column [, ...] ) ]
changedUPDATE
--- 7.3
+++ 7.4
@@ -1,3 +1,3 @@
-UPDATE [ ONLY ] table SET col = expression [, ...]
+UPDATE [ ONLY ] table SET column = { expression | DEFAULT } [, ...]
 [ FROM fromlist ]
 [ WHERE condition ]
changedSELECT INTO

  
changedCLOSE
--- 7.3
+++ 7.4
@@ -1 +1 @@
-CLOSE cursor
+CLOSE name
changedDECLARE
--- 7.3
+++ 7.4
@@ -1,3 +1,3 @@
-DECLARE cursorname [ BINARY ] [ INSENSITIVE ] [ SCROLL ]
-CURSOR FOR query
-[ FOR { READ ONLY | UPDATE [ OF column [, ...] ] ]
+DECLARE name [ BINARY ] [ INSENSITIVE ] [ [ NO ] SCROLL ]
+CURSOR [ { WITH | WITHOUT } HOLD ] FOR query
+[ FOR { READ ONLY | UPDATE [ OF column [, ...] ] } ]
changedEXECUTE

  
changedFETCH
--- 7.3
+++ 7.4
@@ -1,6 +1,18 @@
-FETCH [ direction ] [ count ] { IN | FROM } cursor
-FETCH [ FORWARD | BACKWARD | RELATIVE ] [ # | ALL | NEXT | PRIOR ]
-{ IN | FROM } cursor
+FETCH [ direction { FROM | IN } ] cursorname
 
+where direction can be empty or one of:
 
-FETCH RELATIVE 0 FROM cursor.
+NEXT
+PRIOR
+FIRST
+LAST
+ABSOLUTE count
+RELATIVE count
+count
+ALL
+FORWARD
+FORWARD count
+FORWARD ALL
+BACKWARD
+BACKWARD count
+BACKWARD ALL
changedMOVE
--- 7.3
+++ 7.4
@@ -1,2 +1 @@
-MOVE [ direction ] [ count ]
-{ IN | FROM } cursor
+MOVE [ direction { FROM | IN } ] cursorname
changedPREPARE
--- 7.3
+++ 7.4
@@ -1 +1 @@
-PREPARE plan_name [ (datatype [, ...] ) ] AS query
+PREPARE plan_name [ (datatype [, ...] ) ] AS statement
changedABORT

  
changedBEGIN

  
changedCOMMIT

  
changedEND

  
changedROLLBACK

  
changedSET CONSTRAINTS
--- 7.3
+++ 7.4
@@ -1 +1 @@
-SET CONSTRAINTS { ALL | constraint [, ...] } { DEFERRED | IMMEDIATE }
+SET CONSTRAINTS { ALL | name [, ...] } { DEFERRED | IMMEDIATE }
changedSET TRANSACTION
--- 7.3
+++ 7.4
@@ -1,3 +1,4 @@
-SET TRANSACTION ISOLATION LEVEL { READ COMMITTED | SERIALIZABLE }
-SET SESSION CHARACTERISTICS AS TRANSACTION ISOLATION LEVEL
-{ READ COMMITTED | SERIALIZABLE }
+SET TRANSACTION
+[ ISOLATION LEVEL { READ COMMITTED | SERIALIZABLE } ] [ READ WRITE | READ ONLY ]
+SET SESSION CHARACTERISTICS AS TRANSACTION
+[ ISOLATION LEVEL { READ COMMITTED | SERIALIZABLE } ] [ READ WRITE | READ ONLY ]
changedSTART TRANSACTION
--- 7.3
+++ 7.4
@@ -1 +1 @@
-START TRANSACTION [ ISOLATION LEVEL { READ COMMITTED | SERIALIZABLE } ]
+START TRANSACTION [ ISOLATION LEVEL { READ COMMITTED | SERIALIZABLE } ] [ READ WRITE | READ ONLY ]
changedRESET
--- 7.3
+++ 7.4
@@ -1,4 +1,2 @@
-RESET variable
-
-
+RESET name
 RESET ALL
changedSET
--- 7.3
+++ 7.4
@@ -1,2 +1,2 @@
-SET [ SESSION | LOCAL ] variable { TO | = } { value | 'value' | DEFAULT }
+SET [ SESSION | LOCAL ] name { TO | = } { value | 'value' | DEFAULT }
 SET [ SESSION | LOCAL ] TIME ZONE { timezone | LOCAL | DEFAULT }
changedSHOW
--- 7.3
+++ 7.4
@@ -1,4 +1,2 @@
 SHOW name
-
-
 SHOW ALL
changedUNLISTEN
--- 7.3
+++ 7.4
@@ -1 +1 @@
-UNLISTEN { notifyname | * }
+UNLISTEN { name | * }
changedANALYZE

  
changedCLUSTER
--- 7.3
+++ 7.4
@@ -1 +1,3 @@
 CLUSTER indexname ON tablename
+CLUSTER tablename
+CLUSTER
changedVACUUM

  
changedCOMMENT
--- 7.3
+++ 7.4
@@ -1,5 +1,5 @@
 COMMENT ON
-[
+{
 TABLE object_name |
 COLUMN table_name.column_name |
 AGGREGATE agg_name (agg_type) |
@@ -15,4 +15,4 @@
 TRIGGER trigger_name ON table_name |
 TYPE object_name |
 VIEW object_name
-] IS 'text'
+} IS 'text'