外键名为userId,如何改名为user_id

user表有主键user_id,字段类型是unsigned int,

order表的外键userId,它引用user表的user_id,但名字是奇怪的“userId”,

现在想吧“userId”改为“user_id”,请问用什么语句?

我用下面的语句,报错:

SQL code
ALTER TABLE long.order CHANGE `userId` `user_id` INT(10) UNSIGNED NOT NULL COMMENT '用户id';

Error Code : 1025
Error on rename of '.\long\#sql-c4_1' to '.\long\order' (errno: 150)




作者: Longerandlonger   发布时间: 2011-06-01

删了重建

作者: rucypli   发布时间: 2011-06-01

因为已经定义了外键,要么删除外键或使外键无效,再用上面的命令

作者: mr_mablevi   发布时间: 2011-06-01

先删除外键,然后重命名,然后加上外键

作者: z1988316   发布时间: 2011-06-01