In my efforts to write a beginner’s book on C# (in Dutch) I came across this bug. While I understand some of the reasoning in the Microsoft response:
“Resolving this as by design. We need a unique mechanism to identify individual rows, becuase you have not set the primary key, we can rely on the fact that the user took the due diligence themselves to ensure each row is unique. If that is the case then when you try to edit/update any work, the application know which row to modify. However when you have two rows with the same data it is impossible for the components to know which row to edit“
I cannot understand why this has never been an issue in Microsoft Access or the data editing features in the SQL Enterprise Manager. Seems to me like MS needs a company knowledge base, because other developers found a solution… years ago.
The result of the bug however is that if you create a table and add by accident you enter a value twice in different rows, there’s no direct way to correct the error. You cannot delete it, you cannot change it.