MCSE-Microsoft Certified Solutions Expert Question & Answers
You are the database administrator for a financial services company. Employees enter data 24 hours a day into a SQL Server 2000 database. These employees report slower response times when new account information is gathered from branch offices and added to the database. You currently use the following BULK INSERT statement to add the account information.BULK INSERT finance.dbo.customersFROM 'd:bulkaccts143_10142000.txt'WITH DATAFILETYPE = 'char', FIELDTERMINATOR = 't', ROWTERMINATOR = 'n', TABLOCK You want to ensure that response times do not slow when new account information is added to the database. What should you do?
|A) Add the BATCHSIZE option to the BULK INSERT statement, and then set the option equal to 10 percent of the number of rows to be loaded.||B) Add the ROWS_PER_BATCH option to the BULK INSERT statement, and then set the option equal to 10 percent of the number of rows to be loaded.|
|C) Drop the indexes for the Customers table before the data load, and then re-create the indexes after the data load is complete.||D) Remove the TABLOCK option from the BULK INSERT statement.|
The TABLOCK hint increases the number of locks during the adding process. This is the reason why response time are slows down during this process. By removing the TABLOCK hint the default more granular row-level lock will be used. This would decrease the scope of the locks which would result in less waiting jobs and performance would improve.
Note: The BULK INSERT statement is used to copy a data file into a database table or view in a format specified by the user. The BULK INSERT statement accepts the TABLOCK hint, which allows the user to specify the locking behavior that the BULK INSERT statement should use. TABLOCK specifies that a bulk update table-level lock is taken for the duration of the bulk copy. If TABLOCK is not specified, the default uses row-level locks.
- Related Questions