重新访问 MySQL,并尝试更改表的结构。我想将两行从 varchar(30) 更改为更高。
我用谷歌搜索了它,并尝试了似乎正确的语句,但出现语法错误:
ALTER TABLE 'compdetails' CHANGE 'compName' varchar(60) not null;
然而,这个语句给了我一个语法错误。我也试过在表格/列名周围没有''但没有任何运气。
“错误 2064 (42000):您的 SQL 语法有错误......”
谁能唤起我的记忆?
就这样:
ALTER TABLE 'compdetails' CHANGE compName compName varchar(60) not null;
ALTER TABLE `compdetails` MODIFY COLUMN `compName` varchar(60) not null;
首先,如果要引用表名,则需要使用反引号而不是单引号。单引号仅用于字符串文字。
其次,当您想要重命名列时使用 CHANGE,而 MODIFY 允许您更改列定义而不重命名它。所以你应该使用:
ALTER TABLE compdetails MODIFY compName varchar(60) NOT NULL;
在线MySQL 文档非常好,我鼓励您在遇到语法问题时检查它。