d8781cd7_g_Multiload_with_DBD__Teradata__Required__
[Attribute] Source [Description] can be set to either a subroutine reference, a file description, or a connection handle to be used as the control session of a fastexport job for Loopback (see below) which will act as the source of the multiload data. A file description is specified as < VARTEXT 'c' | INDICDATA | DATA > filename where 'c' is the separator character. Use '|' for compatibility with the default Teradata VARTEXT file format. INDICDATA indicates a fastload formatted file with indicator bytes, and DATA indicates a fastload formatted file without indicator bytes. If a subroutine reference is specified, the specified subroutine is responsible for providing a multiload bitmask when binding parameter data. The bitmask provides a means for an application to implement the conditional APPLY supported in Multiload scripts (i.e., "APPLY dmllabel WHERE condition"). The bitmask is supplied to the statement handle using the tdat_mlmask attribute, which is set to either a scalar value, or an arrayref of bitmasks (for array binding). When multiple multiload jobs are defined (i.e., more than 1 request is specified with the SQL attribute), each job receives its own copy of each record. This bitmask indicates which multiload jobs are to receive a copy of the associated record. If bit 0 is set, then the first job receives a copy of the associated record; if bit 1 is set, the second job receives a copy of the record. If a scalar value is supplied with tdat_mlmask, and array binding is used, then the scalar is applied to all the bound records. if no tdat_mlmask value is provided, the default is all jobs get a copy of all records if an arrayref supplied with tdat_mlmask is shorter than the array(s) used to bind records, a copy of the additional records will be supplied to each job. for file or Loopback sources, all jobs get copies of all records. In addition, when binding rows, the subroutine is responsible for keeping track of the current size of the output buffer. Assuming the final size of the record can be computed, an additional 14 bytes per record is added by the driver for Multiload control information, and the size in the buffer will be multiplied by the number of multiload jobs to which the record is applied. In summary, each record will add the following number of bytes to the output buffer: total_bytes = (record_length + 14 + indicator_byte_count) * number_of_jobs Note that the subroutine supplies each record only once; DBD::Teradata will perform the replication of each record, based on the bitmask described above. [Required ?] 
Yes
Y e s
N o
Using Multiload with DBD::Teradata
Required ?