This is how one table/view would look like in an SSIS package:
The Source object is, of course, connected to the Source database's table/view. The other objects beneath it (the Lookup, Destination and Update objects) are all connected to the Destination database's table/view.
The Update object is the only tricky element in this package. I specify the update script manually, which looks like:
UPDATE dbo.MyTableSET Column1 = ?,Column2 = ?,Column3 = ?WHERE ID= ?
(see: Generate SSIS Update script which I use to generate the update script for each table that I have in my SSIS package)
Each "?" will be automatically mapped by the system based on the order you defined it. All you have to do next is to specify the Column Mappings. Make sure that you do it in the right order like the image below:
Note how the ID is specified last -- that's because its corresponding "?" was specified last in the Update statement.