Hi there,You're doing far too much work here. No need for a cursor!! That's what's killing the performance.A couple of questions first,1) Do you resequence the entire table after every bulk insert? I am assuming that you insert your data in to a table that already contains image records?A solution would be a to create a single column table which would hold the maximum ROWID that is being using in your table. We will call it ROWIDTABLEAs an example, consider this : You have a source table A and a target table B. Table B already contains 1000 records with ROWID 1-1000.Your next insert should start at 1001.Your single column table should contain the maximum ROWID from table B.declare @MaxROWID intset @MaxRowID = (select currentROWID from ROWIDTABLE)select identity(int, 1, 1) as _ROWID, * into ##TableAfrom TableAinsert into Table B(.....)select _ROWID + MaxROWID, *from ##TableAupdate ROWIDTABLEset currentROWID = (select max(ROWID) from TableB)drop table ##TableA
------------->>> BREAKING NEWS!!! <<<-------------
Saddam Hussien has weapons of mass destrcution