Error 0xc0202049: Data Flow Task 1: Failure inserting into the read-only column

107,215

Solution 1

Before Importing date execute the below query to set identity insert on:

SET IDENTITY_INSERT TableName ON

Then do the import operations.

After importing date execute the below query to set identity insert off:

SET IDENTITY_INSERT TableName OFF

Solution 2

With all due respect to Kishore's answer, that approach is valid if you're modifying the packages. Since you're using the import/export wizard, the more straight forward approach would be to check the Enable Identity Insert box on the Column Mappings tab.

In the Import Export Wizard, after selecting the table for copy, click the Edit Mappings... button

enter image description here

In the resulting screen, click the Enable identity insert property and your identities will be replicated over.

enter image description here

Same net result as issuing SET IDENTITY_INSERT TableName ON & OFF but this is done automagically at build time.

Share:
107,215
john Gu
Author by

john Gu

Updated on July 08, 2022

Comments

  • john Gu
    john Gu almost 2 years

    I am using SQL Server 2008 import and export wizard. I need to import a database. I opened the SQL server import/export wizard and I went through the following actions:-

    1. for the destination I chose "SQL server native client 10".

    2. then I selected copy data from one or more tables or view.

    3. SSIS run immediately

    but i got the following errors,

    Operation stopped...

    • Initializing Data Flow Task (Success)

    • Initializing Connections (Success)

    • Setting SQL Command (Success)

    • Setting Source Connection (Success)

    • Setting Destination Connection (Success)

    • Validating (Error)

    Messages Error 0xc0202049: Data Flow Task 1: Failure inserting into the read-only column "ActionID". (SQL Server Import and Export Wizard)

    Error 0xc0202045: Data Flow Task 1: Column metadata validation failed. (SQL Server Import and Export Wizard)

    Error 0xc004706b: Data Flow Task 1: "component "Destination - AuditActions" (22)" failed validation and returned validation status "VS_ISBROKEN". (SQL Server Import and Export Wizard)

    It seems that I can not import identity columns and timestamps columns, so how I can force these values to be imported?

  • john Gu
    john Gu over 10 years
    thanks the identity columns problem is solved, and now i am having problems with timestamps columns. any idea what i can do with them ?
  • Niall Connaughton
    Niall Connaughton over 9 years
    Timestamps are mentioned here: sqlmatters.com/Articles/…
  • pmartin
    pmartin almost 8 years
    If you're importing multiple tables, you can select multiple tables in the list, and then click Edit Mappings to make the Enable identity insert option apply to all selected tables in a single click.
  • MadJlzz
    MadJlzz over 7 years
    Kishore solution hasn't solved my problem but the one you offers does. Thanks a lot.
  • Kevin .NET
    Kevin .NET almost 7 years
    I wonder after exporting if it is needed to do:SET IDENTITY_INSERT TableName OFF. Thanks.
  • June
    June almost 7 years
    I have first modified the table to remove the primary key constraint, then truncate the table. After I have done both of them I then run the export tool. Had I know this earlier, I would save a lot of time.
  • June
    June almost 7 years
    Try it again on a different table, the export process was stopped by "Violation of PRIMARY KEY constraint 'PK_tblNote'. Cannot insert duplicate key in object 'dbo.tblNote'. The duplicate key value is (1).". (SQL Server Import and Export Wizard)
  • Ken Palmer
    Ken Palmer about 5 years
    Thanks for the screen shots!