How can we rename the primary key of a table in FluentMigrator?

c#, fluent-migrator, mysql

Solution

Use the following method call to rename your primary key (SQL Server)

Execute.Sql("EXEC sp_rename N'[Current_Primary_Key_Name]', '[New_Primary_Key_Name]', 'object';");

Problem

I need to rename the primary key of an existing table through `FluentMigrator` so an automapper can automatically detect the column. For most columns, it's a simple `1)` delete any foreign key constraints on that column `2)` delete indices for that column and `3)` rename the column. I have historically done this by: ``` Delete.ForeignKey("foreignkeyconstraint").OnTable("mytable"); Delete.Index("UserId").OnTable("mytable"); Rename.Column("UserId").OnTable("mytable").To("UserInfo_id"); ``` However, this doesn't appear to work for primary keys, since I can't delete the automatically created index on that column. What is the correct way to rename a primary key column with `FluentMigrator`?

Original source