209 lines
8.9 KiB
HTML
209 lines
8.9 KiB
HTML
|
|
<!doctype html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
|
|
<html>
|
|
<head><META http-equiv="Content-Type" content="text/html; charset=utf-8">
|
|
<title>Delete library (DLTLIB)</title>
|
|
<link rel="stylesheet" type="text/css" href="../rzahg/ic.css">
|
|
</head>
|
|
<body bgcolor="white">
|
|
<script language="Javascript" src="../rzahg/synch.js" type="text/javascript"></script>
|
|
<a name="DLTLIB.Top_Of_Page"></a>
|
|
<h2>Delete library (DLTLIB)</h2>
|
|
<table width="100%">
|
|
<tr>
|
|
<td valign="top" align="left"><b>Where allowed to run: </b>All environments (*ALL)<br>
|
|
<b>Threadsafe: </b>Conditional
|
|
</td>
|
|
<td valign="top" align="right">
|
|
<a href="#DLTLIB.PARAMETERS.TABLE">Parameters</a><br>
|
|
<a href="#DLTLIB.COMMAND.EXAMPLES">Examples</a><br>
|
|
<a href="#DLTLIB.ERROR.MESSAGES">Error messages</a></td>
|
|
</tr>
|
|
</table>
|
|
|
|
<div> <a name="DLTLIB"></a>
|
|
<p>The Delete Library (DLTLIB) command deletes a specified library from the system after all objects in the library have been deleted. If a library that is deleted contains objects, this command first deletes all of the objects and then deletes the library.
|
|
</p>
|
|
<p>If you do not have the authority to delete every object in the library, only those for which you do have the authority are deleted. In this case, the library and all the other objects in the library remain unchanged. If any object in the library is in use (locked by another thread or job), the object cannot be deleted.
|
|
</p>
|
|
<p>If a library has been damaged, you should not delete it without first trying to resolve the damage. In most cases, the damage can be resolved by starting the initial program load (IPL) sequence to rebuild a user library (including the QGPL library). Then, if the library is still damaged, it should be deleted. Either a saved version of the library can be restored in its place or the library can be recreated.
|
|
</p>
|
|
<p><b>Restrictions:</b>
|
|
</p>
|
|
<ol>
|
|
<li>To delete a library, you must have use (*USE) and object existence (*OBJEXIST) authorities for the specified library and *OBJEXIST authority for every object in it. If you do not have *OBJEXIST authority for the library, nothing is deleted. If you do not have *OBJEXIST authority for one or more objects in the library, those objects and the library are not deleted.
|
|
</li>
|
|
<li>A library cannot be deleted if it is in the library list for the current thread.
|
|
</li>
|
|
<li>A library cannot be deleted if it is in the library list for any primary thread that is active on the system when the QLIBLCKLVL system value is set to lock libraries in the library list.
|
|
</li>
|
|
<li>This command cannot be used to delete the QQALIB, QRECOVERY, QRCYxxxxx, QSPL, QSPLnnnn, QSYS, QSYSxxxxx QSYSCGI, QSYS2, QSYS2xxxxx, QTEMP, SYSIBM, or SYSIBxxxxx libraries (where 'xxxxx' is the number of a primary auxiliary storage pool (ASP) and 'nnnn' is the number of a basic user ASP or a primary or secondary ASP.)
|
|
</li>
|
|
<li>If the QDOC library is deleted, it is created again during the next IPL.
|
|
</li>
|
|
<li>This command is conditionally threadsafe. The following restriction applies:
|
|
<ul>
|
|
<li>In multithreaded jobs, this command is not threadsafe for distributed files and fails for distributed files that use relational databases of type *SNA.
|
|
</li>
|
|
</ul>
|
|
</li>
|
|
</ol>
|
|
</div>
|
|
<table width="100%">
|
|
<tr><td align="right"><a href="#DLTLIB.Top_Of_Page">Top</a></td></tr>
|
|
</table>
|
|
<hr size="2" width="100%">
|
|
|
|
<div>
|
|
<h3><a name="DLTLIB.PARAMETERS.TABLE">Parameters</a></h3>
|
|
<table border="1" cellpadding="4" cellspacing="0">
|
|
<!-- col1="10" col2="15" col3="30" col4="10" -->
|
|
<tr>
|
|
<th bgcolor="aqua" valign="bottom" align="left">Keyword</th>
|
|
<th bgcolor="aqua" valign="bottom" align="left">Description</th>
|
|
<th bgcolor="aqua" valign="bottom" align="left">Choices</th>
|
|
<th bgcolor="aqua" valign="bottom" align="left">Notes</th>
|
|
</tr>
|
|
<tr>
|
|
<td valign="top"><a href="#DLTLIB.LIB"><b>LIB</b></a></td>
|
|
<td valign="top">Library</td>
|
|
<td valign="top"><i>Name</i></td>
|
|
<td valign="top">Required, Positional 1</td>
|
|
</tr>
|
|
<tr>
|
|
<td valign="top"><a href="#DLTLIB.ASPDEV"><b>ASPDEV</b></a></td>
|
|
<td valign="top">ASP device</td>
|
|
<td valign="top"><i>Name</i>, <b><u>*</u></b>, *CURASPGRP, *SYSBAS</td>
|
|
<td valign="top">Optional</td>
|
|
</tr>
|
|
</table>
|
|
|
|
<table width="100%">
|
|
<tr><td align="right"><a href="#DLTLIB.Top_Of_Page">Top</a></td></tr>
|
|
</table>
|
|
</div>
|
|
<div> <a name="DLTLIB.LIB"></a>
|
|
<h3>Library (LIB)</h3>
|
|
<p>Specifies the library to be deleted.
|
|
</p>
|
|
<p>This is a required parameter.
|
|
</p>
|
|
<dl>
|
|
<dt><b><i>name</i></b></dt>
|
|
<dd>Specify the name of the library to be deleted.
|
|
</dd>
|
|
</dl>
|
|
</div>
|
|
<table width="100%">
|
|
<tr><td align="right"><a href="#DLTLIB.Top_Of_Page">Top</a></td></tr>
|
|
</table>
|
|
<div> <a name="DLTLIB.ASPDEV"></a>
|
|
<h3>ASP device (ASPDEV)</h3>
|
|
<p>Specifies the auxiliary storage pool (ASP) device where storage is allocated for the library to be deleted. If the library is not part of the thread's library name space, this parameter must be specified to ensure the correct library is the target of the delete library operation.
|
|
</p>
|
|
<dl>
|
|
<dt><b><u>*</u></b></dt>
|
|
<dd>The ASPs that are currently part of the thread's library name space will be searched to find the library. This includes the system ASP (ASP 1), all defined basic user ASPs (ASPs 2-32), and, if the thread has an ASP group, all primary and secondary ASPs in the ASP group.
|
|
</dd>
|
|
<dt><b>*CURASPGRP</b></dt>
|
|
<dd>If the thread has an ASP group, the primary and secondary ASPs in the ASP group will be searched to find the library. The system ASP (ASP 1) and defined basic user ASPs (ASPs 2-32) will not be searched.
|
|
</dd>
|
|
<dt><b>*SYSBAS</b></dt>
|
|
<dd>The system ASP (ASP 1) and all defined basic user ASPs (ASPs 2-32) will be searched to find the library. No primary or secondary ASPs will be searched, even if the thread has an ASP group.
|
|
</dd>
|
|
<dt><b><i>name</i></b></dt>
|
|
<dd>Specify the name of the primary or secondary ASP device to be searched to find the library. The primary or secondary ASP must have been activated (by varying on the ASP device) and have a status of 'Available'. The system ASP (ASP 1) and defined basic user ASPs (ASPs 2-32) will not be searched.
|
|
<p>
|
|
<b>Note: </b>To specify a specific auxiliary storage pool (ASP) device name, you must have *USE authority for each ASP device in the ASP group.
|
|
</p>
|
|
</dd>
|
|
</dl>
|
|
</div>
|
|
<table width="100%">
|
|
<tr><td align="right"><a href="#DLTLIB.Top_Of_Page">Top</a></td></tr>
|
|
</table>
|
|
<hr size="2" width="100%">
|
|
<div><h3><a name="DLTLIB.COMMAND.EXAMPLES">Examples</a> </h3>
|
|
<p><b>Example 1: Deleting a Library</b>
|
|
</p>
|
|
<p>
|
|
<pre>
|
|
DLTLIB LIB(W)
|
|
</pre>
|
|
</p>
|
|
<p>This command deletes library W after all of its objects have been deleted. If library W contains objects and you have the authority to delete all of those objects, library W and all of the objects are deleted. If you do not have authority to delete all of the objects, only those for which you have authority are deleted and the library is not deleted.
|
|
</p>
|
|
<p><b>Example 2: Deleting a Library in an Independent Auxiliary Storage Pool (ASP)</b>
|
|
</p>
|
|
<p>
|
|
<pre>
|
|
DLTLIB LIB(INVENTORY) ASPDEV(SALES)
|
|
</pre>
|
|
</p>
|
|
<p>This command deletes library INVENTORY in the independent auxiliary storage pool (ASP) named SALES after all of its objects have been deleted. The SALES ASP must have been activated (by varying on the ASP device) and have a status of 'Available'. If library INVENTORY contains objects and you have the authority to delete all of those objects, library INVENTORY and all of the objects are deleted. If you do not have authority to delete all of the objects, only those for which you have authority are deleted and the library is not deleted.
|
|
</p>
|
|
</div>
|
|
<table width="100%">
|
|
<tr><td align="right"><a href="#DLTLIB.Top_Of_Page">Top</a></td></tr>
|
|
</table>
|
|
<hr size="2" width="100%">
|
|
<div><h3><a name="DLTLIB.ERROR.MESSAGES">Error messages</a> </h3>
|
|
<p><b><u>*ESCAPE Messages</u></b>
|
|
</p>
|
|
<dl>
|
|
<dt><b>CPFA030</b></dt>
|
|
<dd>Object already in use.
|
|
</dd>
|
|
<dt><b>CPFB8ED</b></dt>
|
|
<dd>Device description &1 not correct for operation.
|
|
</dd>
|
|
<dt><b>CPF210D</b></dt>
|
|
<dd>Library &1 in use.
|
|
</dd>
|
|
<dt><b>CPF2110</b></dt>
|
|
<dd>Library &1 not found.
|
|
</dd>
|
|
<dt><b>CPF2113</b></dt>
|
|
<dd>Cannot allocate library &1.
|
|
</dd>
|
|
<dt><b>CPF2129</b></dt>
|
|
<dd>Clear or delete of system library &1 canceled.
|
|
</dd>
|
|
<dt><b>CPF2161</b></dt>
|
|
<dd>Cannot delete some objects in library &1.
|
|
</dd>
|
|
<dt><b>CPF2166</b></dt>
|
|
<dd>Library name &1 not valid.
|
|
</dd>
|
|
<dt><b>CPF2167</b></dt>
|
|
<dd>Library &1 on library list and cannot be deleted.
|
|
</dd>
|
|
<dt><b>CPF2168</b></dt>
|
|
<dd>Library &1 not deleted.
|
|
</dd>
|
|
<dt><b>CPF218C</b></dt>
|
|
<dd>&1 not a primary or secondary ASP.
|
|
</dd>
|
|
<dt><b>CPF2182</b></dt>
|
|
<dd>Not authorized to library &1.
|
|
</dd>
|
|
<dt><b>CPF8122</b></dt>
|
|
<dd>&8 damage on library &4.
|
|
</dd>
|
|
<dt><b>CPF9814</b></dt>
|
|
<dd>Device &1 not found.
|
|
</dd>
|
|
<dt><b>CPF9825</b></dt>
|
|
<dd>Not authorized to device &1.
|
|
</dd>
|
|
<dt><b>CPF9833</b></dt>
|
|
<dd>*CURASPGRP or *ASPGRPPRI specified and thread has no ASP group.
|
|
</dd>
|
|
</dl>
|
|
</div>
|
|
<table width="100%">
|
|
<tr><td align="right"><a href="#DLTLIB.Top_Of_Page">Top</a></td></tr>
|
|
</table>
|
|
</body>
|
|
</html>
|