OSDN Git Service

Update lock sgml/man/psql help pages.
authorBruce Momjian <bruce@momjian.us>
Thu, 3 Jun 1999 19:18:00 +0000 (19:18 +0000)
committerBruce Momjian <bruce@momjian.us>
Thu, 3 Jun 1999 19:18:00 +0000 (19:18 +0000)
doc/src/sgml/ref/lock.sgml
src/bin/psql/psqlHelp.h
src/man/lock.l

index dc702b0..804872d 100644 (file)
@@ -18,7 +18,7 @@
    <DATE>1998-09-24</DATE>
   </REFSYNOPSISDIVINFO>
   <SYNOPSIS>
-   LOCK [ TABLE ] <REPLACEABLE CLASS="PARAMETER">table</REPLACEABLE>
+   LOCK [ TABLE ] [[IN] [ROW|ACCESS] [SHARE|EXCLUSIVE] MODE] <REPLACEABLE CLASS="PARAMETER">table</REPLACEABLE>
   </SYNOPSIS>
 
   <REFSECT2 ID="R2-SQL-LOCK-1">
    <PARA>
     
     <VARIABLELIST>
-     <VARLISTENTRY>
-      <TERM>
-       DELETE 0
-      </TERM>
-      <LISTITEM>
-       <PARA>
-       Message returned on a successful lock.
-       <command>LOCK</command> is implemented as a 
-       <command>DELETE FROM <REPLACEABLE CLASS="PARAMETER">table</REPLACEABLE></command>
-       which is guaranteed to not delete any rows.
-       </para>
-      </listitem>
-     </varlistentry>
-     <VARLISTENTRY>
       <TERM>
        ERROR <REPLACEABLE CLASS="PARAMETER">table</REPLACEABLE>: Table does not exist.
       </TERM>
@@ -92,8 +78,9 @@
    Description
   </TITLE>
   <PARA>
-   <command>LOCK</command> locks in exclusive mode a table inside
-   a transaction. The classic use for this is
+   By default, <command>LOCK</command> locks in exclusive mode a table inside
+   a transaction. Various options allow shared access, or row-level locking
+   control.  The classic use for this is
    the case where you want to select some data, then
    update it inside a transaction.
    If you don't explicit lock a table using LOCK statement, it will be
    <PARA>
     There is no <command>LOCK TABLE</command> in <acronym>SQL92</acronym>,
     which instead uses <command>SET TRANSACTION</command> to specify
-    concurrency level on transactions.
+    concurrency level on transactions.  We support that too.
    </para>
   </refsect2>
  </refsect1>
index 6840786..507b0d5 100644 (file)
@@ -5,7 +5,7 @@
  *
  * Copyright (c) 1994, Regents of the University of California
  *
- * $Id: psqlHelp.h,v 1.66 1999/06/03 18:37:59 momjian Exp $
+ * $Id: psqlHelp.h,v 1.67 1999/06/03 19:17:59 momjian Exp $
  *
  *-------------------------------------------------------------------------
  */
@@ -283,7 +283,8 @@ static struct _helpStruct QL_HELP[] = {
        {"lock",
                "exclusive lock a table inside a transaction",
        "\
-\tLOCK [TABLE] class_name;"},
+\tLOCK [TABLE] class_name \n\
+\t[[IN] [ROW|ACCESS] [SHARE|EXCLUSIVE] MODE];"},
        {"move",
                "move an cursor position",
        "\
index 440e491..5f71a8a 100644 (file)
@@ -1,16 +1,20 @@
 .\" This is -*-nroff-*-
 .\" XXX standard disclaimer belongs here....
-.\" $Header: /cvsroot/pgsql/src/man/Attic/lock.l,v 1.5 1998/03/23 15:09:34 momjian Exp $
+.\" $Header: /cvsroot/pgsql/src/man/Attic/lock.l,v 1.6 1999/06/03 19:18:00 momjian Exp $
 .TH FETCH SQL 01/23/93 PostgreSQL PostgreSQL
 .SH NAME
 lock - exclusive lock a table
 .SH SYNOPSIS
 .nf
-\fBlock\fR [\fBtable\fR] classname
+\fBlock\fR [\fBtable\fR] classname [[IN] [ROW|ACCESS] [SHARE|EXCLUSIVE] MODE]
 .fi
 .SH DESCRIPTION
+By default,
 .BR lock
-exclusive locks a table inside a transaction. The classic use for this
+exclusive locks an entire table inside a transaction.
+Various options allow shared access, or row-level locking control.
+.PP
+The classic use for this
 is the case where you want to \fBselect\fP some data, then update it
 inside a transaction.  If you don't exclusive lock the table before the
 \fBselect\fP, some other user may also read the selected data, and try