无法使用联机SQL表编辑器修改主键字段

时间:2012-03-30 06:20:11

标签: sql sql-server sql-server-2005

我尝试了两种不同的在线sql表编辑器,

Universal Table Editor& 表智能编辑器

使用上述工具查看数据库时,如果我的表中定义了主键字段,则无法编辑。在开始时,我认为它与表编辑器有关,但是2个不同的编辑器导致了同样的问题,所以我认为它与sql server有关。

我目前正在使用SQL Server 2005。

以下是我的编辑器和我的数据库属性的图像:

Table Smart Editor Screenshot for my table

Universal Table Editor Screenshot for my table

My database properties for my table

TSE Error image

UTE Error image

2 个答案:

答案 0 :(得分:2)

通常,尝试修改数据库值失败时会出现错误消息。消息是什么?

这听起来像主键被设置为自动编号的身份。在这种情况下,该值由数据库在创建每一行时自动确定。而且你无法编辑这个值。

答案 1 :(得分:1)

您使用的编辑器似乎是根据某些假设构建的 - 主键值永远不会改变,而且它们始终是系统生成的。

这两种假设都不是通常为真。虽然通常认为主键值永远不会改变是可取的,但一个好的工具不应该认为这是真的。它也不应该假设主键值总是自动生成。


SQL内置了一些缓解功能来处理更改的主键 - 尤其是CASCADE约束的FOREIGN KEY功能。