FreeTDS(May 14, 2011)                                    FreeTDS(May 14, 2011)



NAME
       freebcp - bulk loading utility for Sybase and Microsoft databases

SYNOPSIS
       freebcp [[database.]owner.]object_name {in | [query]out} datafile
       { -c | -n | -f formatfile }
       [-b batchsize] [-F firstrow] [-L lastrow] [-e errfile]
       [-I interfaces] [-m maxerrors] [-t field_term] [-r row_term]
       [-h hints] [-T textsize] [-A packet_size] [-O options]
       [-S servername] [-U username] [-P password] [-EdVv]

DESCRIPTION
       freebcp is a utility program distributed with FreeTDS.  freebcp
       replicates (in part at least) the functionality of the "bcp" utility
       programs distributed by Sybase and Microsoft.

       freebcp makes use of the db-lib bcp API provided by FreeTDS. This API
       is also available to application developers.

       The manual pages or online help for Sybase or SQL Server can be
       referenced for more detailed information on "bcp" functionality.

TABLES AND FILES
       database
              The database of the object being copied.  Optional if the
              table/view is in the default database for username.

       owner  The owner of the object being copied. Optional if username or
              the database owner is the owner of the table.

       object_name
              Usually, object_name is the name of the database table you wish
              to access. It can also be a view (and, subject to constraints,
              it is sometimes possible to load a view). It can also be an SQL
              query, cf. queryout, below.

       in | [query]out
              The direction of the bulk copy operation. 'in' indicates data
              are to be copied from a host file into a database table; 'out'
              indicates data are to be copied from a database table to a host
              file. 'queryout' indicates that table_name is in fact a query,
              rather than a database object. freebcp will execute the query
              and write the results to a file. (It is a good idea to have the
              query return one and only one result set.)

       datafile
              The name of an operating system file.

OPTIONS
       -c     The host data file is (or will be) in "character" format, i.e.,
              a text file. Encoding is determined by the client charset
              attribute in freetds.conf.

       -n     The host data file is in "native" format.  This is a format that
              freebcp will be able to process, but is not portable or
              readable.

       -f formatfile
              The format of the host data file is described by formatfile. The
              layout of formatfile is identical to that understood by the
              Sybase and Microsoft bcp utilities, but is too complicated to
              describe here.

       -b batchsize
              The number of rows per batch of data copied. Batching applies
              only when you are bulk copying into the database. Each batch of
              data is effectively 'committed' into the database. The default
              value for batchsize is 1000.

       -F firstrow
              The first row to copy from the input file or database table. The
              default is the first row, row 1.

       -L lastrow
              The last row to copy from an input file  or database table. The
              default is the last row.

       -r row_term
              The row terminator for a character file.  May be more than one
              character.  Default is newline ('\n'). Cf. -c, above.

       -t field_term
              The field terminator for character file. Also known as a column
              delimiter. May be more than one character.  Default is tab
              ('\t'). Cf. -c, above.

       -m maxerrors
              Stop after encountering maxerror errors. Default 10.

       -e errfile
              Write errors to error_file. For uploads.  Includes line and
              column information, and the row data.

       -S servername
              The name of the Database Server to which to connect.

       -U username
              A database login name. If username is not provided, a domain
              login is attempted for TDS 7+ connections.

       -P password
              A database password.

       -E     Write the data in datafile to the table's IDENTITY column.
              Without this flag, the identity data present in the datafile
              will be ignored, and new IDENTITY values will be generated for
              the imported rows.

       -d     Turn off any logging. (Unintuitive, perhaps.)

       -O options
              SQL text to set connection options prior to the bcp operation.
              If options is a valid filename, the SQL is read from the file
              instead. Sometimes needed for queryout.  Example: "-O 'SET
              QUOTED_IDENTIFIER ON'"

       -I interfaces
              The name and location of the interfaces file to search when
              connecting to servername. Overrides freetds.conf.

       -h hints
              Set bcp hints. For valid values, cf. bcp_options() in the
              FreeTDS Reference Manual.

       -T textsize
              For text or image columns, set the maximum number of characters
              to request from the server. Defaults to the setting in
              freetds.conf. If not specified anywhere, defaults to the full
              size of the data.

       -A packet_size
              Set the size of a TDS packet to packet_size.  Not sure why you
              would want to do this, except as an experiment.

       -v -V  Print the version information and exit.

ENVIRONMENT
       DSQUERY
              default servername

NOTES
       When connecting to a Sybase database server, it is required that the
       TDS 5.0 protocol be used. When connecting to a Microsoft SQL Server
       2000 database server, the TDS 7.1 protocol is required.

       Theoretically both Sybase and Microsoft support the TDS 4.2 protocol,
       but in reality they implement the bcp portion of TDS 4.2 differently.
       FreeTDS has no way of knowing which type of server it's connected to,
       hence TDS protocol 4.2 is not supported.

HISTORY
       freebcp first appeared in FreeTDS 0.60

AUTHORS
       The freebcp utility was written by Bill Thompson
       (thompbil@exchange.uk.ml.com)

BUGS
       Currently, there is no support for text data types in freebcp, when SQL
       Server 2000 is the target database.



FreeTDS Utilities                   0.91RC2              FreeTDS(May 14, 2011)
