218 lines
12 KiB
HTML
218 lines
12 KiB
HTML
<?xml version="1.0" encoding="UTF-8"?>
|
||
<!DOCTYPE html
|
||
PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||
<html lang="en-us" xml:lang="en-us">
|
||
<head>
|
||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||
<meta name="copyright" content="(C) Copyright IBM Corporation 2005" />
|
||
<meta name="DC.rights.owner" content="(C) Copyright IBM Corporation 2005" />
|
||
<meta name="security" content="public" />
|
||
<meta name="Robots" content="index,follow" />
|
||
<meta http-equiv="PICS-Label" content='(PICS-1.1 "http://www.icra.org/ratingsv02.html" l gen true r (cz 1 lz 1 nz 1 oz 1 vz 1) "http://www.rsac.org/ratingsv01.html" l gen true r (n 0 s 0 v 0 l 0) "http://www.classify.org/safesurf/" l gen true r (SS~~000 1))' />
|
||
<meta name="DC.Type" content="reference" />
|
||
<meta name="DC.Title" content="Notes on the delimited import file (CPYFRMIMPF command)" />
|
||
<meta name="abstract" content="The characters and data types discussed in this topic interpret the import file's data for a delimited import file." />
|
||
<meta name="description" content="The characters and data types discussed in this topic interpret the import file's data for a delimited import file." />
|
||
<meta name="DC.Relation" scheme="URI" content="rbal3usingcpyfrm.htm" />
|
||
<meta name="DC.Format" content="XHTML" />
|
||
<meta name="DC.Identifier" content="rbal3delimp" />
|
||
<meta name="DC.Language" content="en-us" />
|
||
<!-- All rights reserved. Licensed Materials Property of IBM -->
|
||
<!-- US Government Users Restricted Rights -->
|
||
<!-- Use, duplication or disclosure restricted by -->
|
||
<!-- GSA ADP Schedule Contract with IBM Corp. -->
|
||
<link rel="stylesheet" type="text/css" href="./ibmdita.css" />
|
||
<link rel="stylesheet" type="text/css" href="./ic.css" />
|
||
<title>Notes on the delimited import file (CPYFRMIMPF command)</title>
|
||
</head>
|
||
<body id="rbal3delimp"><a name="rbal3delimp"><!-- --></a>
|
||
<!-- Java sync-link --><script language="Javascript" src="../rzahg/synch.js" type="text/javascript"></script>
|
||
<h1 class="topictitle1">Notes on the delimited import file (CPYFRMIMPF command)</h1>
|
||
<div><p>The characters and data types discussed in this topic interpret
|
||
the import file's data for a delimited import file.</p>
|
||
<div class="section"><dl><dt class="dlterm">Blanks</dt>
|
||
<dd>Blanks are treated in the following ways: <ul><li>All leading blanks and trailing blanks are discarded for character fields
|
||
unless enclosed by string delimiters, according to the RMVBLANK parameter.</li>
|
||
<li><img src="./delta.gif" alt="Start of change" />A field of all blanks is interpreted as a field of one
|
||
single blank character unless RMVBLANK *NONE is specified.<img src="./deltaend.gif" alt="End of change" /></li>
|
||
<li>You cannot embed blanks inside numeric data.</li>
|
||
<li>You cannot select a blank as a field or record delimiter.</li>
|
||
</ul>
|
||
<p>The RMVBLANK parameter has the following options:</p>
|
||
<ul><li>*NONE: All leading and trailing blanks are retained.</li>
|
||
<li>*LEADING: Leading blanks are removed. This is the default value.</li>
|
||
<li>*TRAILING: Trailing blanks are removed.</li>
|
||
<li>*BOTH: Leading and trailing blanks are removed.</li>
|
||
</ul>
|
||
<div class="note"><span class="notetitle">Note:</span> Removal of blanks, as specified by the RMVBLANK parameter, takes
|
||
precedence over string delimiters.</div>
|
||
</dd>
|
||
<dt class="dlterm"><img src="./delta.gif" alt="Start of change" />Null fields<img src="./deltaend.gif" alt="End of change" /></dt>
|
||
<dd><img src="./delta.gif" alt="Start of change" />A null field is defined as: <ul><li>Two adjacent field delimiters (no data in between).</li>
|
||
<li>Two adjacent string delimiters (no data in between).</li>
|
||
<li>A field delimiter followed by a record delimiter (no data in between),
|
||
an empty string.</li>
|
||
</ul>
|
||
<p>If the field is null, the following statement is true:</p>
|
||
<ul><li>If the record's output field is not nullable and the import is a null
|
||
field, the record is not to be copied, and an error is signaled.</li>
|
||
</ul>
|
||
<img src="./deltaend.gif" alt="End of change" /></dd>
|
||
<dt class="dlterm"><img src="./delta.gif" alt="Start of change" />Delimiters<img src="./deltaend.gif" alt="End of change" /></dt>
|
||
<dd><img src="./delta.gif" alt="Start of change" /> <ul><li>A field or record delimiter cannot be a blank.</li>
|
||
<li>A string delimiter or a string escape character cannot be the same as
|
||
a field delimiter, a record delimiter, a decimal point, a date separator,
|
||
or a time separator.</li>
|
||
<li>A string delimiter can enclose all fields when the string escape character
|
||
STRESCCHR(*NONE) is specified. The string delimiter character should not be
|
||
contained within the character string.</li>
|
||
<li>A field delimiter can not be the same as a record delimiter.</li>
|
||
<li>When a string delimiter character is contained by a string, precede the
|
||
string delimiter in the string with the string escape character specified
|
||
with the STRESCCHR parameter.</li>
|
||
<li>The defaults for delimiters are as follows: <ul><li>String is: *DBLQUOTE (double quotation mark)</li>
|
||
<li>Field is: , (comma)</li>
|
||
<li>Decimal separator is: . (period)</li>
|
||
<li>Record is *EOR (end of record)</li>
|
||
</ul>
|
||
</li>
|
||
<li>If the data type of the from is CHARACTER, OPEN, EITHER, or ONLY, all
|
||
double byte data must be contained within string delimiters or shift characters
|
||
(for OPEN, EITHER, ONLY data type). <div class="note"><span class="notetitle">Note:</span> String delimiters have lower precedence
|
||
than leading blanks and trailing blanks.</div>
|
||
</li>
|
||
</ul>
|
||
<img src="./deltaend.gif" alt="End of change" /></dd>
|
||
<dt class="dlterm"><img src="./delta.gif" alt="Start of change" />String escape character<img src="./deltaend.gif" alt="End of change" /></dt>
|
||
<dd><img src="./delta.gif" alt="Start of change" />When a string delimiter character is contained by a string, you can use
|
||
the STRESCCHR parameter to specify a string escape character for indicating
|
||
that the string delimiter character should be treated as a normal character
|
||
instead of string delimiter.<div class="p">The STRESCCHR parameter has the following options:<ul><li>*NONE: No string escape character is used.</li>
|
||
<li>*STRDLM: The string delimiter is used as the string escape character.</li>
|
||
<li><var class="varname">character-value</var> - The <var class="varname">character-value</var> is
|
||
used as the string escape character.</li>
|
||
</ul>
|
||
</div>
|
||
<img src="./deltaend.gif" alt="End of change" /></dd>
|
||
<dt class="dlterm">Numeric field</dt>
|
||
<dd> <ul><li>Numeric fields can be imported in decimal or exponential form.</li>
|
||
<li>Data to the right of the decimal point might be truncated depending on
|
||
the output data format.</li>
|
||
<li>Decimal separators are either a period or a comma (command option).</li>
|
||
<li>Signed numeric fields are supported, + or -.</li>
|
||
</ul>
|
||
</dd>
|
||
<dt class="dlterm">Character or Varcharacter fields</dt>
|
||
<dd> <ul><li>Fields too large to fit in the output fields are truncated (right). The
|
||
server sends a diagnostic message. </li>
|
||
<li>An empty string is defined as two string delimiters with no data between
|
||
them.</li>
|
||
<li>For the server to recognize a character as a starting or ending string
|
||
delimiter, it must be the first or last character in the field after the RMVBLANK
|
||
option has been applied. For example, 'abc' with ' as the delimiter is the
|
||
same as abc.</li>
|
||
</ul>
|
||
</dd>
|
||
<dt class="dlterm">IGC or VarIGC fields</dt>
|
||
<dd> <ul><li>The server copies data from the from-file to the to-file. If any of the
|
||
data is not valid, the server generates a mapping error. </li>
|
||
<li>Data located between the Shift Out and Shift In characters is treated
|
||
as double-byte data. This data is also not parsed for delimiters. The Shift
|
||
characters in this case become "string delimiters".</li>
|
||
</ul>
|
||
</dd>
|
||
<dt class="dlterm">Graphic, VarGraphic fields</dt>
|
||
<dd>The server copies the data from the from-file to the to-file.</dd>
|
||
<dt class="dlterm">CCSIDs</dt>
|
||
<dd> <ul><li>The data from the from-file is read into a buffer by the CCSID of the
|
||
from-file. The data in the buffer is checked and written to the to-file. The
|
||
CCSID of the open to-file is set to the value of the from-file, unless a to-file
|
||
CCSID is used. <p><img src="./delta.gif" alt="Start of change" />If a to-file CCSID is used, the data is
|
||
converted to that CCSID. If the CCSID of the to-file field is 65535, the data
|
||
is converted to the CCSID specified in the to CCSID (TOCCSID) parameter. <img src="./deltaend.gif" alt="End of change" /></p>
|
||
<div class="p">If
|
||
the from-file is a tape file, and the FROMCCSID(*FILE) is specified, the following
|
||
limits apply: <ul><li>The job CCSID is used or</li>
|
||
<li>The from-file CCSID is requested by the user</li>
|
||
</ul>
|
||
</div>
|
||
</li>
|
||
<li>The character data (delimiters) passed on the command are converted to
|
||
the CCSID of the from file. This allows the character data of the from-file
|
||
and command parameters to be compatible.</li>
|
||
</ul>
|
||
</dd>
|
||
<dt class="dlterm">Date field</dt>
|
||
<dd> <ul><li>All date formats supported by <span class="keyword">iSeries™</span> can
|
||
be imported (*ISO, *USA, *EUR, *JIS, *MDY, *DMY, *YMD, *JUL, and *YYMD).</li>
|
||
<li>You can copy a date field to a timestamp field.</li>
|
||
</ul>
|
||
</dd>
|
||
<dt class="dlterm">Time field</dt>
|
||
<dd> <ul><li>All time formats supported by <span class="keyword">iSeries</span> can
|
||
be imported (*ISO, *USA, *EUR, *JIS, *HMS).</li>
|
||
<li>You can copy a time field to a timestamp field.</li>
|
||
</ul>
|
||
</dd>
|
||
<dt class="dlterm">Date and time separators</dt>
|
||
<dd>The server supports all valid separators for date and time fields.</dd>
|
||
<dt class="dlterm">Timestamp field</dt>
|
||
<dd>Timestamp import fields must be 26 bytes. The import ensures that periods
|
||
exist in the time portion, and a dash exists between the date and time portions
|
||
of the timestamp.</dd>
|
||
<dt class="dlterm">LOB field</dt>
|
||
<dd>LOB data fields require using secondary stream files that contain the
|
||
LOB data. The imported data file lists the name of the stream file containing
|
||
the LOB data. The Field Definition File (FDF) that describes the offsets of
|
||
the fields in the data file, also describes the offsets of the LOB file name
|
||
field (not the LOB field itself). <p>An example of importing LOB data:</p>
|
||
<p>FDF
|
||
file:</p>
|
||
<pre>COLCHAR10 1 10 42
|
||
COLLOB 12 40 44
|
||
*END</pre>
|
||
<p>The data file would be 44 characters in record length,
|
||
containing the following data:</p>
|
||
<pre>0 1 2 3 4
|
||
12345678901234567890123456789012345678901234
|
||
aaaaaaaaaa /lobdata/lob1.dat N N
|
||
bbbbbb /lobdata/lob2.dat N N
|
||
/lobdata/lob3.dat Y N
|
||
cccccccccc N Y</pre>
|
||
<div class="note"><span class="notetitle">Notes:</span> For each record in the imported data file: <ol><li>Characters 1–10 are data for a column named COLCHAR10, with the null indicator
|
||
at byte position 42.</li>
|
||
<li>Characters 12–40 are data for a column named COLLOB, with the null indicator
|
||
at byte position 44. The COLLOB value is the name of the file which contains
|
||
the LOB data.</li>
|
||
<li>In this example, there are 3 data files (lob1.dat, lob2.dat, and lob3.dat)
|
||
which contain the actual LOB data to be imported.</li>
|
||
</ol>
|
||
</div>
|
||
</dd>
|
||
<dt class="dlterm">Number of fields mismatch</dt>
|
||
<dd>If the from-file or to-file do not have the same number of fields, the
|
||
data is either truncated to the smaller to-file size, or the extra to-file
|
||
fields will receive a null value. If the fields cannot contain null values,
|
||
the server issues an error message. </dd>
|
||
<dt class="dlterm">Multiple jobs</dt>
|
||
<dd>The number of jobs that are used to copy the data depends on the DEGREE(*NBRTASKS)
|
||
parameter of the CHGQRYA command. When multiple jobs are used, the server
|
||
uses batch jobs to copy the data. The user can change, hold or end these batch
|
||
jobs. The copy does not complete until all the started batch jobs complete. <p>The
|
||
relative record numbers can be maintained only if a single job is used and
|
||
the import file does not contain any deleted records. If the from-file is
|
||
a distributed physical file or logical file, the server performs the copy
|
||
in a single process.</p>
|
||
<p>Files with less than 50 000 records use only one
|
||
job.</p>
|
||
</dd>
|
||
</dl>
|
||
</div>
|
||
</div>
|
||
<div>
|
||
<div class="familylinks">
|
||
<div class="parentlink"><strong>Parent topic:</strong> <a href="rbal3usingcpyfrm.htm" title="The Copy From Import File (CPYFRMIMPF) command maps or parses the data from ("import") an import file to the to-file.">Use the Copy From Import File (CPYFRMIMPF) command to copy between different servers</a></div>
|
||
</div>
|
||
</div>
|
||
</body>
|
||
</html> |