Sunday, February 19, 2012

"Insufficient key column information for updating and refreshing"

"Insufficient key column information for updating and refreshing"
What does this message mean. All that I am trying to do is manually update
2 rows in one table with one join to another table with the updated values.
Thanks.
ArcherThis message means that SQL Server can determine which value you want to
update because is the relation is not that clear for him. That could be
caused if you want to update a joined table for common data which can be
changed in particular only one ROW. But the best thing would be if you could
send some DDL and the query to find your problem.
HTH, Jens Suessmeyer.
http://www.sqlserver2005.de
--
"bagman3rd" <bagman3rd@.discussions.microsoft.com> schrieb im Newsbeitrag
news:3EA65F99-EC00-4156-B1B1-1C1A0E52DAB9@.microsoft.com...
> "Insufficient key column information for updating and refreshing"
> What does this message mean. All that I am trying to do is manually
> update
> 2 rows in one table with one join to another table with the updated
> values.
> Thanks.
> Archer|||Hi,
See the KB :-
http://support.microsoft.com/defaul...kb;en-us;814893
Thanks
Hari
SQL Server MVP
"bagman3rd" <bagman3rd@.discussions.microsoft.com> wrote in message
news:3EA65F99-EC00-4156-B1B1-1C1A0E52DAB9@.microsoft.com...
> "Insufficient key column information for updating and refreshing"
> What does this message mean. All that I am trying to do is manually
> update
> 2 rows in one table with one join to another table with the updated
> values.
> Thanks.
> Archer|||It means that there is no primary key declared on the table
by which the row you want to update can be identified
uniquely. When you "view" a table, you can point to a
row by where it is on the screen, but for the update to
succeed, the row must be identified by the value of a
declared primary key, not where you see it on the screen.
Non-database programs, like Excel, keep track of data
by physical position (row number), but database systems
do not. What you see on the screen when you do a "manual
update" is not the actual data, but a result set, like a printout.
It's a dubious convenience of most database systems to
provide an interface whereby someone can change something
in a printout and have the change propogate back to the data.
An UPDATE statement is the best way to modify data,
and my guess is that you can't specify what you want to
update uniquely in a WHERE clause.
Steve Kass
Drew University
bagman3rd wrote:

>"Insufficient key column information for updating and refreshing"
>What does this message mean. All that I am trying to do is manually update
>2 rows in one table with one join to another table with the updated values.
>Thanks.
>Archer
>

No comments:

Post a Comment