如何更改SQL数据库中的主键数据??

 我来答
ppphex
2011-10-02 · TA获得超过325个赞
知道小有建树答主
回答量:266
采纳率:100%
帮助的人:191万
展开全部
设计数据库结构时,应该避免主键字段有意义,比如用学生学号、人的身份证号做主键都不好,因为这些数据后期都可能要改动,最好用一个序列号做主键去关联所有的子表,这样就不需要改主表主键值了。
你这个问题可以这样解决,先把要改主键的记录复制一条,主键用新值,然后把所有子表的对应记录改掉,最后删除主表的原记录。
百度网友96ffcf7
推荐于2017-09-05 · 知道合伙人互联网行家
百度网友96ffcf7
知道合伙人互联网行家
采纳数:22721 获赞数:118724
从事多年网络方面工作,有丰富的互联网经验。

向TA提问 私信TA
展开全部
如果数据不多,你就搞到临时表里,我
CREATE TABLE TMP_TABLE
(和原来的结构类似的创建一个)
IF EXIST (SELECT * FROM TABLE)
(INSERT INTO TMP_TABLE SELECT * FROM TALBE)
DROP TABLE
SP_RENAME 'DBO.TMP_TABLE','TABLE','OBJECT'
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友f40becc
2011-10-02 · TA获得超过2663个赞
知道小有建树答主
回答量:151
采纳率:0%
帮助的人:103万
展开全部
guoweifyj 说的很明白了。直接修改就行了,只要保证主键唯一性就可以。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友14e7cc3
2011-10-02 · TA获得超过205个赞
知道小有建树答主
回答量:279
采纳率:0%
帮助的人:177万
展开全部
简单的说就是主键的值不会重复就可以了
直接用UPDATE SET 主键= WHERE
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
guoweifyj
2011-10-01 · TA获得超过346个赞
知道小有建树答主
回答量:158
采纳率:100%
帮助的人:169万
展开全部
更改主键数据?直接改呀..只要保证主键的唯一性就OK了.
还是其他?需求说清楚点哈..
追问
要保证主键中的数据不发生改变    只要知道大概的方法就行了~~      谢啦
追答
直接UPDATE TB SET 主键=? WHERE 条件就好了,既然你定义了主键,数据库引擎也是不会允许你更改为相同主键字段的,会报错.如果可以更改自然就能更改成功,一般情况下主键字段都不用来进行UPDATE,主要用于检索以及作为条件联接判断等、
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 2条折叠回答
收起 更多回答(3)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式