bcp Utility

The bcp utility bulk copies data between an instance of Microsoft SQL Server 2005 and a data file in a user-specified format. The bcp utility can be used to import large numbers of new rows into SQL Server tables or to export data out of tables into data files. Except when used with the queryout option, the utility requires no knowledge of Transact-SQL. To import data into a table, you must either use a format file created for that table or understand the structure of the table and the types of data that are valid for its columns.

Topic link icon For the bcp syntax conventions, see Command Prompt Utilities.

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]"]

Arguments

  • database_name
    Is the name of the database in which the specified table or view resides. If not specified, this is the default database for the user.
  • owner
    Is the name of the owner of the table or view. owneris optional if the user performing the operation owns the specified table or view. If owneris not specified and the user performing the operation does not own the specified table or view, SQL Server 2005 returns an error message, and the operation is canceled.
  • table_name
    Is the name of the destination table when importing data into SQL Server (in), and the source table when exporting data from SQL Server (out).
  • view_name
    Is the name of the destination view when copying data into SQL Server (in), and the source view when copying data from SQL Server (out). Only views in which all columns refer to the same table can be used as destination views. For more information on the restrictions for copying data into views, see INSERT (Transact-SQL).
  • "query"
    Is a Transact-SQL query that returns a result set. If the query returns multiple result sets, such as a SELECT statement that specifies a COMPUTE clause, only the first result set is copied to the data file; subsequent result sets are ignored. Use double quotation marks around the query and single quotation marks around anything embedded in the query. queryout must also be specified when bulk copying data from a query.
  • in | out | queryout | format
    Specifies the direction of the bulk copy, as follows:

    • in copies from a file into the database table or view.

      Note

      The bcp utility included with SQL Server 6.5 does not support bulk copying into tables that contain the sql_variant or bigint data types.

    • out copies from the database table or view to a file. When extracting data, note that the bcp utility represents an empty string as a null and a null string as an empty string.

    • queryout copies from a query and must be specified only when bulk copying data from a query.

    • format creates a format file based on the option specified (-n, -c, -w, -6, or -N) and the table or view delimiters. When bulk copying data, the bcp command can refer to a format file, which saves you from re-entering format information interactively. The format option requires the -f option; creating an XML format file, also requires the -x option. For more information, see Creating a Format File.

  • data_file
    Is the full path of the data file. When data is bulk imported into SQL Server, the data file contains the data to be copied into the specified table or view. When data is bulk exported from SQL Server, the data file contains the data copied from the table or view. The path can have from 1 through 255 characters. The data file can contain a maximum of 2,147,483,647 rows.

    Important

    For the format option, you must specify nul as the value of data_file (formatnul).

  • -mmax_errors
    Specifies the maximum number of syntax errors that can occur before the bcp operation is canceled. A syntax error implies a data conversion error to the target data type. The max_errors total excludes any errors that can be detected only at the server, such as constraint violations.

    A row that cannot be copied by the bcp utility is ignored and is counted as one error. If this option is not included, the default is 10.

    Note

    The -m option also does not apply to converting the money or bigint data types.

  • -fformat_file
    Specifies the full path of a format file. The meaning of this option depends on the environment in which it is used, as follows:

    • If -f is used with the format option, the specified format_file is created for the specified table or view. To create an XML format file, also specify the -x option. For more information, see Creating a Format File.

    • If used with the in or out option, -f requires an existing format file.

      Note

      Using a format file in with the in or out option is optional. In the absence of the -f option, if -n, -c, -w, -6, or -N is not specified, the command prompts for format information and lets you save your responses in a format file (whose default file name is Bcp.fmt).

  • -x
    Used with the format and -fformat_file options, generates an XML-based format file instead of the default non-XML format file. The -x does not work when importing or exporting data. It generates an error if used without both format and -fformat_file.

    Note

    To use the -x switch, you must be using a bcp 9.0 client. For information about how to use the bcp 9.0 client, see "Remarks," later in this topic.

  • -eerr_file
    Specifies the full path of an error file used to store any rows that the bcp utility cannot transfer from the file to the database. Error messages from the bcp command go to the workstation of the user. If this option is not used, an error file is not created.
  • -Ffirst_row
    Specifies the number of the first row to export from a table or import from a data file. This parameter requires a value greater than (>) 0 but less than (<) or equal to (=) the total number rows. In the absence of this parameter, the default is the first row of the file.
  • -Llast_row
    Specifies the number of the last row to export from a table or import from a data file. This parameter requires a value greater than (>) 0 but less than (<) or equal to (=) the number of the last row. In the absence of this parameter, the default is the last row of the file.
  • -bbatch_size
    Specifies the number of rows per batch of imported data. Each batch is imported and logged as a separate transaction that imports the whole batch before being committed. By default, all the rows in the data file are imported as one batch. To distribute the rows among multiple batches, specify a batch_size that is smaller than the number of rows in the data file. If the transaction for any batch fails, only insertions from the current batch are rolled back. Batches already imported by committed transactions are unaffected by a later failure.

    Do not use this option in conjunction with the **h"**ROWS_PER_BATCH =bb" option.

    For more information, see Managing Batches for Bulk Import.

  • -n
    Performs the bulk-copy operation using the native (database) data types of the data. This option does not prompt for each field; it uses the native values.

    For more information, see Using Native Format to Import or Export Data.

  • -c
    Performs the operation using a character data type. This option does not prompt for each field; it uses char as the storage type, without prefixes and with \t (tab character) as the field separator and \r\n (newline character) as the row terminator.

    For more information, see Using Character Format to Import or Export Data.

  • -N
    Performs the bulk-copy operation using the native (database) data types of the data for noncharacter data, and Unicode characters for character data. This option offers a higher performance alternative to the -w option, and is intended for transferring data from one instance of SQL Server to another using a data file. It does not prompt for each field. Use this option when you are transferring data that contains ANSI extended characters and you want to take advantage of the performance of native mode. -N cannot be used with SQL Server 6.5 or earlier versions.

    For more information, see Using Unicode Native Format to Import or Export Data.

  • -w
    Performs the bulk copy operation using Unicode characters. This option does not prompt for each field; it uses nchar as the storage type, no prefixes, \t (tab character) as the field separator, and \n (newline character) as the row terminator. This option cannot be used with SQL Server 6.5 or earlier versions.

    For more information, see Using Unicode Character Format to Import or Export Data.

  • -V ( 60| 65| 70| 80)
    Performs the bulk-copy operation using data types from an earlier version of SQL Server. This option does not prompt for each field; it uses the default values. For example, to bulk copy date formats supported by the bcp utility provided with SQL Server 6.5 (but no longer supported by ODBC) into SQL Server 2005, use the -V65 parameter.

    Important

    When data is bulk exported from SQL Server into a data file, the bcp utility does not generate SQL Server 6.0 or SQL Server 6.5 date formats for any datetime or smalldatetime data, even if -V is specified. Dates are always written in ODBC format. Additionally, null values in bit columns are written as the value 0 because SQL Server 6.5 and earlier versions do not support nullable bit data.

    For more information, see Importing Native and Character Format Data from Earlier Versions of SQL Server.

  • -6
    Performs the bulk-copy operation using SQL Server 6.0 or SQL Server 6.5 data types. This option is supported for compatibility with earlier versions only. For SQL Server 7 and later, use the -V option instead.
  • -q
    Executes the SET QUOTED_IDENTIFIERS ON statement in the connection between the bcp utility and an instance of SQL Server. Use this option to specify a database, owner, table, or view name that contains a space or a single quotation mark. Enclose the entire three-part table or view name in quotation marks ("").

    To specify a database name that contains a space or single quotation mark, you must use the –q option.

    For more information, see Remarks later in this topic.

  • -C { ACP | OEM | RAW | code_page }
    Supported for compatibility with early versions of SQL Server. For SQL Server 7.0 and later, Microsoft recommends that you specify a collation name for each column in a format file.

    Specifies the code page of the data in the data file. code_page is relevant only if the data contains char, varchar, or text columns with character values greater than 127 or less than 32.

    Code page value Description

    ACP

    ANSI/MicrosoftWindows (ISO 1252).

    OEM

    Default code page used by the client. This is the default code page used if -C is not specified.

    RAW

    No conversion from one code page to another occurs. This is the fastest option because no conversion occurs.

    code_page

    Specific code page number; for example, 850.

    For more information, see Copying Data Between Different Collations.

  • -tfield_term
    Specifies the field terminator. The default is \t (tab character). Use this parameter to override the default field terminator. For more information, see Specifying Field and Row Terminators.
  • -rrow_term
    Specifies the row terminator. The default is \n (newline character). Use this parameter to override the default row terminator. For more information, see Specifying Field and Row Terminators.
  • -iinput_file
    Specifies the name of a response file, containing the responses to the command prompt questions for each data field when a bulk copy is being performed using interactive mode (-n, -c, -w, -6, or -N not specified).
  • -ooutput_file
    Specifies the name of a file that receives output redirected from the command prompt.
  • -apacket_size
    Specifies the number of bytes, per network packet, sent to and from the server. A server configuration option can be set by using SQL Server Management Studio (or the sp_configure system stored procedure). However, the server configuration option can be overridden on an individual basis by using this option. packet_size can be from 4096 to 65535 bytes; the default is 4096.

    Increased packet size can enhance performance of bulk-copy operations. If a larger packet is requested but cannot be granted, the default is used. The performance statistics generated by the bcp utility show the packet size used.

  • -Sserver_name[ **\instance_name]
    Specifies the instance of SQL Server to which to connect. If no server is specified, the bcp utility connects to the default instance of SQL Server on the local computer. This option is required when a bcp command is run from a remote computer on the network or a local named instance. To connect to the default instance of SQL Server on a server, specify only server_name. To connect to a named instance of SQL Server 2005, specify server_name
    \**instance_name.
  • -Ulogin_id
    Specifies the login ID used to connect to SQL Server.

    ms162802.security(en-US,SQL.90).gifSecurity Note:
    When the bcp utility is connecting to SQL Server with a trusted connection using integrated security, use the -T option (trusted connection) instead of the user name and password combination.
  • -Ppassword
    Specifies the password for the login ID. If this option is not used, the bcp command prompts for a password. If this option is used at the end of the command prompt without a password, bcp uses the default password (NULL).

    ms162802.security(en-US,SQL.90).gifSecurity Note:
    Do not use a blank password. Use a strong password.

    To mask your password, do not specify the -P option along with the -U option. Instead, after specifying bcp along with the -U option and other switches (do not specify -P), press ENTER, and the command will prompt you for a password. This method ensures that your password will be masked when it is entered.

  • -T
    Specifies that the bcp utility connects to SQL Server with a trusted connection using integrated security. The security credentials of the network user, login_id, and password are not required. If –T is not specified, you need to specify –U and –P to successfully log in.
  • -v
    Reports the bcp utility version number and copyright.
  • -R
    Specifies that currency, date, and time data is bulk copied into SQL Server using the regional format defined for the locale setting of the client computer. By default, regional settings are ignored.
  • -E
    Specifies that identity value or values in the imported data file are to be used for the identity column. If -E is not given, the identity values for this column in the data file being imported are ignored, and SQL Server 2005 automatically assigns unique values based on the seed and increment values specified during table creation.

    If the data file does not contain values for the identity column in the table or view, use a format file to specify that the identity column in the table or view should be skipped when importing data; SQL Server 2005 automatically assigns unique values for the column. For more information, see DBCC CHECKIDENT (Transact-SQL).

    The -E option has a special permissions requirement. For more information, see "Remarks" later in this topic.

    For more information, see about keeping identify values see Keeping Identity Values When Bulk Importing Data.

  • **-h"**hint[ ,... n] "
    Specifies the hint or hints to be used during a bulk import of data into a table or view. This option cannot be used when bulk copying data into SQL Server 6.x or earlier.

    • ORDER**(column[ASC | DESC] [,...n])**
      The sort order of the data in the data file. Bulk import performance is improved if the data being imported is sorted according to the clustered index on the table, if any. If the data file is sorted in a different order, that is other than the order of a clustered index key, or if there is no clustered index on the table, the ORDER clause is ignored. The column names supplied must be valid column names in the destination table. By default, bcp assumes the data file is unordered. For optimized bulk import, SQL Server also validates that the imported data is sorted.

      For more information, see Controlling the Sort Order When Bulk Importing Data.

    • ROWS_PER_BATCH **=**bb
      Number of rows of data per batch (as bb). Used when -b is not specified, resulting in the entire data file being sent to the server as a single transaction. The server optimizes the bulk load according to the value bb. By default, ROWS_PER_BATCH is unknown.

      For more information, see Managing Batches for Bulk Import.

    • KILOBYTES_PER_BATCH = cc
      Approximate number of kilobytes of data per batch (as cc). By default, KILOBYTES_PER_BATCH is unknown.

      For more information, see Managing Batches for Bulk Import.

    • TABLOCK
      Specifies that a bulk update table-level lock is acquired for the duration of the bulk load operation; otherwise, a row-level lock is acquired. This hint significantly improves performance because holding a lock for the duration of the bulk-copy operation reduces lock contention on the table. A table can be loaded concurrently by multiple clients if the table has no indexes and TABLOCK is specified. By default, locking behavior is determined by the table option table lock on bulk load.

      For more information, see Controlling the Locking Behavior for Bulk Import.

    • CHECK_CONSTRAINTS
      Specifies that all constraints on the target table or view must be checked during the bulk-import operation. Without the CHECK_CONSTRAINTS hint, any CHECK and FOREIGN KEY constraints are ignored, and after the operation the constraint on the table is marked as not-trusted.

      Note

      UNIQUE, PRIMARY KEY, and NOT NULL constraints are always enforced.

      At some point, you will need to check the constraints on the entire table. If the table was nonempty before the bulk import operation, the cost of revalidating the constraint may exceed the cost of applying CHECK constraints to the incremental data. Therefore, we recommend that normally you enable constraint checking during an incremental bulk import.

      A situation in which you might want constraints disabled (the default behavior) is if the input data contains rows that violate constraints. With CHECK constraints disabled, you can import the data and then use Transact-SQL statements to remove data that is not valid.

      Note

      In SQL Server 2005, bcp enforces new data validation and data checks that might cause existing scripts to fail when they are executed on invalid data in a data file.

      Note

      The -mmax_errors switch does not apply to constraint checking.

      For more information, see Controlling Constraint Checking by Bulk Import Operations.

    • FIRE_TRIGGERS
      Specified with the in argument, any insert triggers defined on the destination table will run during the bulk-copy operation. If FIRE_TRIGGERS is not specified, no insert triggers will run. FIRE_TRIGGERS is ignored for the out, queryout, and format arguments.

      For more information, see Controlling Trigger Execution When Bulk Importing Data.

Remarks

The bcp 9.0 client is installed when you install Microsoft SQL Server tools on your system. If both SQL Server 2005 and SQL Server 2000 tools are installed, depending on the value of the PATH environment variable, you might be using the earlier bcp client instead of the bcp 9.0 client. This environment variable defines the set of directories used by Windows to search for executable files. To discover which version you are using, run the bcp/v command at the Windows Command Prompt. For information about how to set the command path in the PATH environment variable, see Windows Help.

XML format files are only supported when SQL Server tools are installed together with SQL Native Client.

For information about where to find or how to run the bcp utility and about the command prompt utilities syntax conventions, see Command Prompt Utilities.

For information on preparing data for bulk import or export operations, see Preparing Data for Bulk Export or Import.

For information about when row-insert operations that are performed by bulk import are logged in the transaction log, see Prerequisites for Minimal Logging in Bulk Import.

Computed Columns and timestamp Columns

Values in the data file being imported for computed or timestamp columns are ignored, and SQL Server 2005 automatically assigns values. If the data file does not contain values for the computed or timestamp columns in the table, use a format file to specify that the computed or timestamp columns in the table should be skipped when importing data; SQL Server automatically assigns values for the column.

Computed and timestamp columns are bulk copied from SQL Server to a data file as usual.

Specifying Identifiers that Contain Spaces or Quotation Marks

SQL Server identifiers can include characters such as embedded spaces and quotation marks. Such identifiers must be treated as follows:

  • When you specify an identifier or file name that includes a space or quotation mark at the command prompt, enclose the identifier in quotation marks ("").
    For example, the following bcp out command creates a data file named Currency Types.dat:

    bcp AdventureWorks.Sales.Currency out "Currency Types.dat" -T -c
    
  • To specify a database name that contains a space or quotation mark, you must use the q option.

  • For owner, table, or view names that contain embedded spaces or quotation marks, you can either:

    • Specify the -q option, or
    • Enclose the owner, table, or view name in brackets ([]) inside the quotation marks.

Data Validation

In SQL Server 2005, bcp enforces new data validation and data checks that might cause existing scripts to fail when they are executed on invalid data in a data file. For example, bcp now verifies that:

  • The native representation of float or real data types are valid.
  • Unicode data has an even-byte length.

Forms of invalid data that could be bulk imported in earlier versions of SQL Server might fail to load now; whereas, in earlier versions, the failure did not occur until a client tried to access the invalid data. The added validation minimizes surprises when querying the data after bulk load.

Bulk Exporting or Importing SQLXML Documents

To bulk export or import SQLXML data, use one of the following data types in your format file.

Data type Effect

SQLCHAR or SQLVARYCHAR

The data is sent in the client code page or in the code page implied by the collation). The effect is the same as specifying the -c switch without specifying a format file.

SQLNCHAR or SQLNVARCHAR

The data is sent as Unicode. The effect is the same as specifying the -w switch without specifying a format file.

SQLBINARY or SQLVARYBIN

The data is sent without any conversion.

Permissions

A bcp out operation requires SELECT permission on the source table.

A bcp in operation minimally requires SELECT/INSERT permissions on the target table. In addition, ALTER TABLE permission is required if any of the following is true:

  • Constraints exist and the CHECK_CONSTRAINTS hint is not specified.

    Note

    Disabling constraints is the default behavior. To enable constraints explicitly, use the -h option with the CHECK_CONSTRAINTS hint.

  • Triggers exist and the FIRE_TRIGGER hint is not specified.

    Note

    By default, triggers are not fired. To fire triggers explicitly, use the -h option with the FIRE_TRIGGERS hint.

  • You use the -E option to import identity values from a data file.

Note

Requiring ALTER TABLE permission on the target table is new in SQL Server 2005. This new requirement might cause bcp scripts that do not enforce triggers and constraint checks to fail if the user account lacks ALTER table permissions for the target table.

Examples

This section contains the following examples:

  • A. Copying table rows into a data file (with a trusted connection)
  • B. Copying table rows into a data file (with Mixed-mode Authentication)
  • C. Copying data from a file to a table
  • D. Copying a specific column into a data file
  • E. Copying a specific row into a data file
  • F. Copying data from a query to a data file
  • G. Creating a non-XML format file
  • H. Creating an XML format file
  • I. Using a format file to bulk import with bcp

A. Copying table rows into a data file (with a trusted connection)

The following example illustrates the out option on the AdventureWorks.Sales.Currency table. This example creates a data file named Currency.dat and copies the table data into it using character format. The example assumes that you are using Windows Authentication and have a trusted connection to the server instance on which you are running the bcp command.

At a command prompt, enter the following command:

bcp AdventureWorks.Sales.Currency out Currency.dat -T -c

B. Copying table rows into a data file (with mixed-mode authentication)

The following example illustrates the out option on the AdventureWorks.Sales.Currency table. This example creates a data file named Currency.dat and copies the table data into it using character format.

The example assumes that you are using mixed-mode authentication, you must use the -U switch to specify your login ID. Also, unless you are connecting to the default instance of SQL Server on the local computer, use the -S switch to specify the system name and, optionally, an instance name.

bcp AdventureWorks.Sales.Currency out Currency.dat -c -U<login_id> -S<server_name\instance_name>

The system will prompt you for your password.

C. Copying data from a file to a table

The following example illustrates the in option by using the file created in the preceding example (Currency.dat). First, however, this example creates an empty copy of the AdventureWorks Sales.Currency table, Sales.Currency2, into which the data is copied. The example assumes that you are using Windows Authentication and have a trusted connection to the server instance on which you are running the bcp command.

To create the empty table, in Query Editor, enter the following command:

USE AdventureWorks;
GO
SELECT * INTO AdventureWorks.Sales.Currency2 
FROM AdventureWorks.Sales.Currency WHERE 1=2

To bulk copy the character data into the new table, that is to import the data, enter the following command at a command prompt:

bcp AdventureWorks.Sales.Currency2 in Currency.dat -T -c

To verify that the command succeeded, display the contents of the table in Query Editor, and enter:

USE AdventureWorks;
GO
SELECT * FROM Sales.Currency2

D. Copying a specific column into a data file

To copy a specific column, you can use the queryout option. The following example copies only the Name column of the Sales.Currency table into a data file. The example assumes that you are using Windows Authentication and have a trusted connection to the server instance on which you are running the bcp command.

At the Windows command prompt, enter:

bcp "SELECT Name FROM AdventureWorks.Sales.Currency" queryout Currency.Name.dat -T -c

E. Copying a specific row into a data file

To copy a specific row, you can use the queryout option. The following example copies only the row for the contact named Jarrod Rana from the AdventureWorks.Person.Contact table into a data file (Jarrod Rana.dat). The example assumes that you are using Windows Authentication and have a trusted connection to the server instance on which you are running the bcp command.

At the Windows command prompt, enter:

bcp "SELECT * FROM AdventureWorks.Person.Contact WHERE FirstName='Jarrod' AND LastName='Rana' "  queryout "Jarrod Rana.dat" -T -c

F. Copying data from a query to a data file

To copy the result set from a Transact-SQL statement to a data file, use the queryout option. The following example copies the names from the AdventureWorks.Person.Contact table, ordered by last name then first name, into the Contacts.txt data file. The example assumes that you are using Windows Authentication and have a trusted connection to the server instance on which you are running the bcp command.

At the Windows command prompt, enter:

bcp "SELECT FirstName, LastName FROM AdventureWorks.Person.Contact ORDER BY LastName, Firstname" queryout Contacts.txt -c -T

G. Creating a non-XML format file

The following example creates a non-XML format file, Currency.fmt, for the Sales.Currency table in the AdventureWorks database. The example assumes that you are using Windows Authentication and have a trusted connection to the server instance on which you are running the bcp command.

At the Windows command prompt, enter:

bcp AdventureWorks.Sales.Currency format nul -T -c  -f Currency.fmt

For more information, see Understanding Non-XML Format Files.

H. Creating an XML format file

The following example creates an XML format file named Currency.xml for the Sales.Currency table in the AdventureWorks database. The example assumes that you are using Windows Authentication and have a trusted connection to the server instance on which you are running the bcp command.

At the Windows command prompt, enter:

bcp AdventureWorks.Sales.Currency format nul -T -c -x -f Currency.xml

Note

To use the -x switch, you must be using a bcp 9.0 client. For information about how to use the bcp 9.0 client, see "Remarks."

For more information, see Understanding XML Format Files.

I. Using a format file to bulk import with bcp

To use a previously created format file when importing data into an instance of SQL Server, use the -f switch with the in option. For example, the following command bulk copies the contents of a data file, Currency.dat, into a copy of the Sales.Currency table (Sales.Currency2) by using the previously created format file (Currency.xml). The example assumes that you are using Windows Authentication and have a trusted connection to the server instance on which you are running the bcp command.

At the Windows command prompt, enter:

bcp AdventureWorks.Sales.Currency2 in Currency.dat -T -f Currency.xml

Note

Format files are useful when the data file fields are different from the table columns; for example, in their number, ordering, or data types. For more information, see Format Files for Importing or Exporting Data.

Additional Examples

The following topics contain examples of using bcp:

See Also

Other Resources

Preparing Data for Bulk Export or Import
BULK INSERT (Transact-SQL)
OPENROWSET (Transact-SQL)
Importing Data in Parallel with Table Level Locking
SET QUOTED_IDENTIFIER (Transact-SQL)
sp_configure (Transact-SQL)
sp_tableoption (Transact-SQL)
Data Formats for Importing or Exporting Data
Format Files for Importing or Exporting Data
Optimizing Bulk Import Performance
About Bulk Import and Bulk Export Operations
Scenarios for Bulk Importing and Exporting Data

Help and Information

Getting SQL Server 2005 Assistance

Change History

Release History

12 December 2006

Changed content
  • Corrected the CHECK_CONSTRAINTS description to state that this hint causes both CHECK and FOREIGN KEY constraints to be ignored.

17 July 2006

New content:
  • Updated the description of the ORDER argument.
  • Added "Additional Examples" links to topics that contain bcp examples.

14 April 2006

Changed content:
  • Updated note in the CHECK_CONSTRAINTS description by removing FOREIGN KEY from the list of constraints that are always enforced.
  • Updated the requirements for ALTER TABLE permission.