Despite understanding how this works, a better way of looking at this problem is through
the user’s eyes. From their point of view, when they delete a row in the grid, do they intend
to delete just the product or both the product and the supplier? I would wager that 99% of
users expect the former and not the latter. Fortunately you can achieve exactly this with our
old friend, the dynamic property—in this case, the Unique Table dynamic property. You can
specify that deletes refer to just the Products table and not to Suppliers using the following
line of code:
ADOQuery1.Properties[‘Unique Table’].Value := ‘Products’;
As this value cannot be assigned at design time, the next best alternative is to place this line in
the form’s OnCreate event.
For me, updatable joins are just one of many examples of how the designers of ADO have
replaced traditional problems with elegant solutions.
这是原文,你自己看好了