You use the bcp
(bulk copy program) tool to address the bulk movement of data. This
utility is bidirectional, allowing for the movement of data into and
out of a SQL Server database.
bcp uses the following syntax:
bcp {[[database_name.][owner].]{table_name | view_name} | "query"}
{in | out | queryout | format} data_file
[-mmax_errors] [-fformat_file] [-x] [-eerr_file]
[-Ffirst_row] [-Llast_row] [-bbatch_size]
[-n] [-c] [-N] [-w] [-V (60 | 65 | 70 | 80)] [-6]
[-q] [-C { ACP | OEM | RAW | code_page } ] [-tfield_term]
[-rrow_term] [-iinput_file] [-ooutput_file] [-apacket_size]
[-Sserver_name[\instance_name]] [-Ulogin_id] [-Ppassword]
[-T] [-v] [-R] [-k] [-E] [-h"hint [,...n]"]
Some of the commonly
used options—other than the ones used to specify the database, such as
user ID, password, and so on—are the –F and –L
options. These options allow you to specify the first and last row of
data to be loaded from a file, which is especially helpful in large
batches. The –t option allows you to specify the field terminator that separates data elements in an ASCII file. The –E option allows you to import data into SQL Server fields that are defined with identity properties.
Tip
The BULK INSERT T-SQL statement and SSIS are good alternatives to bcp. The BULK INSERT
statement is limited to loading data into SQL Server, but it is an
extremely fast tool for loading data. SSIS is a sophisticated GUI that
allows for both data import and data export, and it has capabilities
that go well beyond those that were available in SQL Server 2000’s Data
Transformation Services (DTS).