How do I change the primary key? I have created an update that adds a fields to an existing database table. I would like to add that field to the list of primary keys already defined. How do I do this? Do I need to execute the following code? 

db_drop_primary_key('table_name');
db_change_field('table_name', 'field_name', 'field_name',
array('type' =&gt; 'int', 'not null' =&gt; TRUE, 'unsigned' =&gt; TRUE),
array('primary key' =&gt; array(...list of field names...)));


I essentially recreate either an existing field or the new one I just added. Is there a simpler method where I can just add the field name to primary key list?
Very close. In a hook_update_N:

// Drop all primary keys.
db_drop_primary_key('table_name');
// Add primary keys.
db_add_primary_key('table_name', array('field_a', 'field_b'...);


See db_drop_primary_key and db_add_primary_key for details and links to usage.