SQL/MP Reference Manual
HP NonStop SQL/MP Reference Manual—523352-013
C-85
Considerations—CONTROL TABLE
If the time elapses before the file system can grant a request to lock data, the
statement fails and SQL returns file-system error 40 (Operation timed out) or error
73 (File/Record locked). (This option does not apply to catalog tables.)
If users often encounter timeouts, increase the time. A low timeout value can cause
the application to function well under light load conditions but not under heavy
loads.
Avoid timeouts below 0.25 second because the reliability of the timeout mechanism
decreases as n.nn approaches 0.01.
Considerations—CONTROL TABLE
During an SQLCI session, CONTROL TABLE affects access to tables and views
from subsequent statements. A particular CONTROL TABLE option remains in
effect until you enter another CONTROL TABLE statement that changes it.
There are several ways to reference a table or view in a CONTROL TABLE
directive: a fully qualified Guardian name, an unqualified Guardian name, a
DEFINE, or a correlation name. The name you use to refer to a table or view in
CONTROL TABLE must exactly match the name you use in the subsequent DML
statement. For example, a CONTROL TABLE directive for Table T has no effect on
a SELECT statement from View V, even when View V is a view that references
Table T. Similarly, $V.SV.TableT is not equivalent to Table T even when Table T
expands to $V.SV.TableT.
A CONTROL TABLE directive that includes at least one option, and that makes a
reference to a specific table or view with an AS or BASETABLE clause, typically
does not affect the values of options set previously with a more general reference
to that table or view. It also does not affect the values of options set with different
specific references to that table or view.
For example, these three directives can coexist if entered in the order shown:
CONTROL TABLE A ACCESS PATH INDEX INDEX1;
CONTROL TABLE A AS B ACCESS PATH INDEX INDEX2;
CONTROL TABLE A AS C ACCESS PATH INDEX INDEX3;
Accesses to table A from references that use correlation names B or C use
INDEX2 or INDEX3, respectively, but other accesses to table A use INDEX1.
The order of the directives shown is significant because a CONTROL TABLE
directive with at least one option that makes a general reference to a table or view
overrides more specific directives that were entered previously. For example, this
sequence of directives causes all accesses to table A to use INDEX1 (even those
from references that use correlation names B or C), because the general reference
value waits the specified number of seconds (a number in the range
0.01 to 21474836.47) or wait indefinitely (if value is -1)
DEFAULT waits 60 seconds