我在尝试重命名列和修改数据类型时遇到问题。我可以单独完成,但每当我尝试将其放在一起时,它都找不到“年份”或“发布年份”。我将一个子句放在第一位或第二位并不重要。
这是一个练习测试题,不会向我展示创建表。他们只是告诉我更改他们创建的表中的一些列,而我无法正确执行的是:
方向: 将 Year 列的名称更改为 ReleaseYear,并将数据类型更改为 SMALLINT
像 DROP 和 ADD 这样的其他操作都工作正常,但当我尝试重命名列并更改数据类型时,我收到错误。就像自从我更改名称以来,它再也找不到该列来修改数据类型。
ALTER TABLE Movie
ADD Producer VARCHAR(50),
DROP COLUMN Genre,
MODIFY COLUMN Year SMALLINT,
RENAME COLUMN Year to ReleaseYear;
第 2 行出现错误 1054 (42S22):“电影”中的未知列“年份”
通话前的桌子:
字段类型
ID int 无符号
标题 varchar(30)
评级代码 varchar(5)
年份
生产者 varchar(50)
使用
CHANGE COLUMN
子句一步即可更改名称和类型:
ALTER TABLE Movie
ADD Producer VARCHAR(50),
DROP COLUMN Genre,
CHANGE COLUMN Year ReleaseYear SMALLINT;