(a) RDAREA-name
<identifier> ((1-30))
When data loading is to be performed by RDAREA on a row-partitioned table, this option specifies the name of the RDAREA to be subject to data loading.
- Rules
- For a table partitioned by key ranges or FIX hash values, HiRDB checks the data to determine whether or not it can be stored in the RDAREA. If the data falls beyond the specified storage range, an error results. However, for a table partitioned by flexible hash values, HiRDB stores the data as is without checking.
- The system treats an RDAREA name that is enclosed in double quotation marks (") as case sensitive; otherwise, the system treats it as all uppercase letters. If an RDAREA name contains a space, you must enclose it in double quotation marks.
- If you are specifying a replica RDAREA, specify the original RDAREA name for RDAREA-name and the target generation number in the -q option.
(b) {{server-name|host-name}
Specifies the name of the server or host containing the input data file(s).
- server-name
<identifier> ((1-8)) - HiRDB/Single Server
- Do not specify this option for a HiRDB/Single Server.
- HiRDB/Parallel Server
- Specify the name of the front-end server or back-end server containing the input data file.
- If you specified an RDAREA name, you can omit this information, in which case the system assumes the name of the server where the specified RDAREA is stored. If you omitted the RDAREA name, be sure to specify this option.
- host-name
<identifier> ((1-32)) - HiRDB/Single Server
- Specify the name of the host containing the input data file. This is the name of the host where the single server is located or the name of the utility special unit.
- You can omit this option regardless of whether or not an RDAREA name is specified. When it is omitted, the system assumes the name of the host where the database load utility (pdload command) was executed.
- If you are using the system switchover facility, specify the primary system's host name.
- HiRDB/Parallel Server
- Do not specify this option for a HiRDB/Parallel Server.
(c) input-data-filename
<pathname>
Specifies the absolute pathname of an input data file containing data to be input.
If there are multiple input data files, separate each file by a comma (,). For details about the input data file, see section 5.5 Input data file.
- HiRDB/Single Server
- Create the input data file(s) in the server machine where the single server is located or in the server machine for the utility special unit.
- HiRDB/Parallel Server
- Create the input data file(s) in the front-end server or a back-end server.
- Rule
- With EasyMT, you can specify only up to two input data files.
- When using an MTguide, you can specify the symbolic device name or device group name controlled by the MTguide in place of a path name.
- The system checks the specified input data file for its accessibility before starting data loading. If access is denied, the system does not execute data loading.
- A file containing a byte order mark (BOM) cannot be used as an input data file. For pdload, use files that do not have a BOM.
(d) (uoc)
Specifies that a UOC is to be used to input/output the input data file. For details about UOCs, see section 5.10 Using a UOC to load a table.
(e) error=error-information-filename
<pathname>
Specifies the absolute pathname of the file to which error information is to be output. If an error is detected in the input data, the system outputs the error information to the error information file.
For details about the error information file, see section 5.6 Error information file.
- HiRDB/Single Server
- Create the error information file in the server machine that contains the input data file.
- HiRDB/Parallel Server
- Create the error information file in the server that contains the input data file (front-end server or back-end server).
When this option is omitted, the database load utility creates the file with a unique name in the /tmp directory.
If the -e option is specified, the utility creates the error information file only when there is an error in the input data.
(f) errdata=error-data-filename [, output-rows-count]
Specifies that erroneous rows of data are to be output, if detected.
You can correct the rows of data that are output to the error data file and load them again as an input data file.
If the -e option is specified, the system ignores the specification of an error data file.
- error-data-filename
<pathname> - Specifies the absolute pathname of the file to which erroneous row data is to be output. You need to create this file at the same server as the input data file. If omitted, the system does not output erroneous rows of data.
- output-rows-count
<unsigned integer> ((1-4294967295)) <<100>> - Specifies the maximum number of erroneous rows of data that can be output. If the number of erroneous rows exceeds the specified value, the system continues processing but outputs only the specified number of erroneous rows of data.
- Rules
- The following limitations apply to the output results of the error data file:
- Input data file in the DAT format
- If the actual data is larger than the value specified in the maxreclen operand, the system does not output any data. If the maxreclen operand is omitted and there is at least 32 KB of data, the system does not output the data.
- Input data file in the binary format
- If the system is unable to edit one line of data due to erroneous length information in the variable-length character string data, the system outputs only the part of the data that was edited successfully. The system does not output fixed-length column data that is less than the defined length.
- LOB column input file
- The system outputs only the erroneous rows of data from the input data file to the error data file. To re-load data after correcting the input data file, you need to correct the LOB column input file according to the output sequence of the input data file.
- An index key value duplication error is not output to the error data file in the following cases:
- It is created in the batch index creation mode.
- For a HiRDB/Single Server, it is in the index update mode and the input data file is located at the utility special unit. For a HiRDB/Parallel Server, the processing is in the index update mode, the input data file is located at a server other than the server containing the table storage RDAREAs, and a buffer shortage occurred during the creation of the error data file.
- Output of an error data file is not applicable when data loading is executed on LOB columns or the input data file used is in binary format created by pdrorg.
- Even if an error occurs in a variable-length character string in a binary-format input data file, only the columns up to the one immediately preceding the error are output to the error data file. Note these points when checking the error data file.
(g) errwork=work-buffer-size-for-error-data-file-creation
((0-2097152))
When specifying the errdata operand, specify the buffer size for creating an error data file in KB.
If the KFPL25222-W message is issued during the data loading specifying the errdata operand, and a part of the error data is not output to the error data file, specify this option to re-execute data loading.
If you specify a value of 0 in the errwork operand, neither key duplication errors nor invalid value errors for abstract data type columns are output, but data loading performance improves.
A KFPL25222-W message is issued when all of the following conditions are met:
- In a HiRDB/Parallel Server, the server name specified in the source statement is different from the name of the back-end server in which a table storage RDAREA is defined; in a HiRDB/Parallel Server, a table is partitioned by row and stored in multiple back-end servers; or a utility special unit is used in a HiRDB/Single Server.
- A unique key index or primary key index is defined for the table subject to data loading, or the table contains columns of abstract data type.
- One of the following is true:
- The input data file contains data that is not to be stored in the database (data in a column structure information file for which a skipdata statement is specified; data that is longer than a defined column length; or data that matches a null comparison value and is treated as a null value).
- Data is to be stored in a column of VARCHAR, NVARCHAR, MVARCHAR, BINARY, or BLOB data type.
- Data is to be stored in an abstract data type for which the input parameter type of the constructor function is VARCHAR, NVARCHAR, MVARCHAR, BINARY, or BLOB.
- Estimation formula
- The following shows a formula for estimating the size of the work buffer for the error data file. This formula provides a value in bytes, but round it up to the nearest KB to specify the option.
Buffer size = {zueng010.tif X/(average length of database storage row + Y) zueng010.tif}
average length of input data row
2
number of servers for which table
storage RDAREAs are defined
X: Value of pd_utl_buff_size in the system common definitions
1024
Y: FIX table: 24
Non-FIX table: (number of columns + 1)
4 + 24
For details about the average length of database storage row (how to calculate the number of table storage pages), see the HiRDB Version 8 Installation and Design Guide.
Note that the previous estimation formula is based on the average row length. Therefore, a buffer shortage may occur depending on the actual arrangement of row data. If there is enough memory, you can ensure output to an error data file by revising the formula as follows:
- For non-FIX tables, set the average length of a database storage row to 0.
- Set the average length of an input data row to the maximum length of input data.
(h) maxreclen=input-data-length
- This option is applicable to an input data file created in DAT format, extended DAT format, binary format, or pdrorg-generated binary format. When you are using the input data file in the fixed-length data format or a streaming tape device, this operand is ignored, if specified.
- When the input data file is in DAT or extended DAT format
<unsigned integer> ((0, 32-524288)) <<32>> - For the input data file in the DAT format, if a row of data exceeds 32 KB, this operand specifies the maximum data length per row in the input data file in KB.
- If this operand is omitted and the input data file contains a row of data that is 32 KB or greater, or that is greater than the specified operand value, the system cancels the processing.
- Rules
- If this operand is omitted or a streaming tape device is used, each row of data in the input data file (DAT format) must not exceed 32 kilobytes.
- If you are using an unload data file in DAT format that was output with the -W dat option specified in pdrorg, the maximum length is displayed in the KFPL22222-I message.
- If you specify 0 in this operand, pdload calculates the row length on the basis of the definition of the table subject to processing. Because the utility uses the table definition, if the input data file contains data that is not to be stored in the table, the value obtained by the utility does not match the input data length, resulting in an error. In this case, specify a non-zero value as the input data length.
Data type or parameter type | Calculation value (bytes) | Formula |
---|
INTEGER | 12 | Sign + number of digits + separator character |
SMALLINT | 7 | Sign + number of digits + separator character |
DECIMAL(m, n) | m + 3 | Sign + number of digits + decimal point + separator character |
FLOAT | 24 | Sign + mantissa part + decimal point + e + sign + exponent part + separator character |
SMALLFLT | 17 | Sign + mantissa part + decimal point + e + sign + exponent part + separator character |
DATE | 11 | Specification format + separator character |
TIME | 9 | Specification format + separator character |
INTERVAL YEAR TO DAY | 11 | Sign + number of digits + comma + separator character |
INTERVAL HOUR TO SECOND | 9 | Sign + number of digits + comma + separator character |
TIMESTAMP(p) | 19 + (p + 1) + 1 | Specification format + separator character |
CHAR(n), MCHAR(n), VARCHAR(n), or MVARCHAR(n) | n + 3 | Number of characters + double quotation marks + separator character |
NCHAR(n), or NVARCHAR(n) | (n 2) + 3 | Number of characters + double quotation marks + separator character |
BINARY(n) | n + 3 | Number of characters + double quotation marks + separator character |
BLOB | 1025 | Maximum length of path name + separator character |
- When the input data file is in binary format or the pdrorg-created binary format
<unsigned integer> ((0, 32-2097152)) <<0>> - If you are executing data loading on a table with a BINARY column, specify the maximum row length in the input data in kilobytes. If you are executing data loading on a table with no BINARY columns, this operand is ignored, if specified.
- Rules
- If this operand is omitted or 0 is specified, pdload obtains the maximum row length from the table definition and uses that value for processing. Note that if you have specified the input data length, but the value obtained from the table definition by pdload is smaller, the utility still uses the latter for processing.
- If the actual maximum data length is less than the maximum row length obtained by pdload from the table definition, specify this operand to minimize the area to be allocated.
(i) EasyMT-information
- [file=filename]
- [{,vol=volume-name|,vol=(volume-name[,volume-name]...)}]
- [,bufno=buffer-sectors-count][,fileno=file-sequence-number]
Specify this operand if the input data file is an EasyMT file.
By specifying a file name and volume name, you can check to see if the actual input file and volume have the specified names. If you do not want to check the file or volume name, omit this operand.
If omitting a file name, do not specify a comma before the first specified item.
- file=filename ~ <alphanumerics> ((1-17))
- Specifies the name of the file.
- [{,vol=volume-name|,vol=(volume-name[,volume-name]...)}]
- ~ <alphanumerics> ((1-6))
- Specifies the names of the volumes containing the file. You can specify up to 255 volume names as long as they fit in one line.
- bufno=buffer-sectors-count ~ <unsigned integer> ((1-256)) <<10>>
- Specifies the number of buffer sectors to be used by EasyMT.
- fileno=file-sequence-number ~ <unsigned integer> ((1-9999))
- Specifies the position of the data file on the magnetic tape. If you omit this operand, the system reads the file located at the next position.
(j) validate sign {date|days-count}
For the EasyMT input data file, this operand specifies the creation date of the input data file or the number of days from the utility execution date during which a read operation is permitted. Note that HP-UX (IPF), Solaris, and Linux do not support this operand.
You cannot specify this operand if the MT label does not contain the creation date in the forms of year (YYYY) and Julian date (DDD), or if the date checking range falls before 1970 or after 2037.
- sign
- Value depends on whether a date or a days-count is specified:
- If date is specified:
- Specify = or > as the sign.
- =:
- Processing is cancelled if the input file's creation date is not the same as the specified date.
- >:
- Processing is cancelled if the input file's creation date falls before the specified date.
- If days-count is specified:
- Specify = as the sign.
- date
- Specifies a date in the format YYYY-MM-DD.
- days-count
- Specifies a number of days as 0 or a positive integer:
- 0:
- Processing is cancelled if the pdload activation date is not the same as the input file's creation date.
- Positive integer:
- Processing is cancelled if the pdload activation date is more than the specified number of days since the input file's creation date.
- Example
- Following are examples of execution status based on the relationship between the value specified in validate and the MT creation date; these examples assume that pdload was activated on February 14, 1996:
Specification example | MT creation date |
---|
1996-02-12 | 1996-02-13 | 1996-02-14 |
---|
validate=1996-02-13 | C | E | C |
validate > 1996-02-13 | C | C | E |
validate=1 | C | E | E |
E: Data loading is executed.
C: Data loading is cancelled.