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.
