Home All Groups Group Topic Archive Search About

"Insufficient key column information for updating and refreshing"

Author
27 May 2005 9:37 PM
bagman3rd
"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

Author
27 May 2005 9:50 PM
Jens Süßmeyer
This 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
---
Show quoteHide quote
"bagman3rd" <bagman***@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
Are all your drivers up to date? click for free checkup

Author
27 May 2005 9:55 PM
Hari Prasad
Hi,

See the KB :-

http://support.microsoft.com/default.aspx?scid=kb;en-us;814893

Thanks
Hari
SQL Server MVP

Show quoteHide quote
"bagman3rd" <bagman***@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
Author
27 May 2005 9:58 PM
Steve Kass
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:

Show quoteHide quote
>"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

>

Bookmark and Share