Oracle8i SQL Reference
Release 3 (8.1.7)

Part Number A85397-01

Library

Product

Contents

Index

Go to previous page Go to beginning of chapter Go to next page

SQL Statements:
DROP SEQUENCE to UPDATE, 15 of 27


LOCK TABLE

Purpose

Use the LOCK TABLE statement to lock one or more tables (or table partitions or subpartitions) in a specified mode. This lock manually overrides automatic locking and permits or denies access to a table or view by other users for the duration of your operation.

Some forms of locks can be placed on the same table at the same time. Other locks allow only one lock per table.

A locked table remains locked until you either commit your transaction or roll it back, either entirely or to a savepoint before you locked the table.

A lock never prevents other users from querying the table. A query never places a lock on a table. Readers never block writers and writers never block readers.

See Also:

 

Prerequisites

The table or view must be in your own schema or you must have the LOCK ANY TABLE system privilege, or you must have any object privilege on the table or view.

Syntax


Keywords and Parameters

schema

Specify the schema containing the table or view. If you omit schema, Oracle assumes the table or view is in your own schema.

table / view

Specify the name of the table to be locked. If you specify view, Oracle locks the view's base tables.

If you specify PARTITION (partition) or SUBPARTITION (subpartition), Oracle first acquires an implicit lock on the table. The table lock is the same as the lock you specify for partition or subpartition, with two exceptions:

If you specify PARTITION and table is composite-partitioned, then Oracle acquires locks on all the subpartitions of partition.

dblink

Specify a database link to a remote Oracle database where the table or view is located. You can lock tables and views on a remote database only if you are using Oracle's distributed functionality. All tables locked by a LOCK TABLE statement must be on the same database.

If you omit dblink, Oracle assumes the table or view is on the local database.

See Also: "Referring to Objects in Remote Databases" for information on specifying database links 

lockmode

Specify one of the following modes:

NOWAIT

Specify NOWAIT if you want Oracle to return control to you immediately if the specified table (or specified partition or subpartition) is already locked by another user. In this case, Oracle returns a message indicating that the table, partition, or subpartition is already locked by another user.

If you omit this clause, Oracle waits until the table is available, locks it, and returns control to you.

Examples

LOCK TABLE Example

The following statement locks the emp table in exclusive mode, but does not wait if another user already has locked the table:

LOCK TABLE emp 

IN EXCLUSIVE MODE 
NOWAIT; 

The following statement locks the remote accounts table that is accessible through the database link boston:

LOCK TABLE accounts@boston 

IN SHARE MODE;

Go to previous page Go to beginning of chapter Go to next page
Oracle
Copyright © 1996-2000, Oracle Corporation.

All Rights Reserved.

Library

Product

Contents

Index