Best practice - Update Primary Keys What's you opinion about Update a primary Key in SQL?

I have a "link" table with 3 key from 3 other tables. Should the administration let people to edit one of the keys?

I usely said no, dont change PK. Add a new line and if you want remove the other line.

sample:

Table A : idA Int
Table B : idB Int
Table C : idC Int

Table Link : PK { idA, idB, idC }

UPDATE [Link] SET idA=@NewIdA
Once a record is created with a primary key, you really shouldn't be updating the primary key.  The point of a PK is that it uniquely identifies that row.  That's why you should be careful when creating a PK with a composite key (multiple fields that comprise the PK), because if those fields need to change, then you're changing your PK and any depending records need to change as well.

Now in a table that has a Foreign Key to another table, it's ok to update the FK if/when necessary.

So really, when the data needs to change, create the PK on an auto-increment field and let people modify the rest of the data, or delete the entire record when necessary.