Drop the foreign Key and disable identity increment from the original table. Then do the above process you mentioned. That is
- Insert records into temp table - (insert - select whatever you want and also foreign key rows present in another table).
- Truncate original table.
- Insert records from temp table to original table (if there are lot of records, drop original table and rename temp table to original table name).
- Add foreign key constraint and enable identity property
- reseed the identity. - DBCC CHECKIDENT (yourtable, reseed, 10045)
10045 - corresponds to number of rows in temp table. So that identity seed start from 10046.
Hope this helps.