无法删除索引或重命名表PHPmyadmin

时间:2013-03-24 19:56:44

标签: mysql database indexing phpmyadmin primary-key

我正在尝试使用phpmyadmin为作业创建基本的大学数据库大纲。在我的一个表中,我命名了一个主键“学生ID”。现在在进行查询时出现错误,当我插入列名Student ID时,声明“unknow column Student”,因为列名中有空格。但phpmyadmin不会让我重命名列甚至删除它。尝试重命名或删除它时会出现此错误 - “#1025错误重命名为......错误:150。”我已将其作为主键删除,并假设它不会让我更改列,因为我错误地将索引放在它上面。现在它不会让我使用DROP INDEX删除索引。

ALTER TABLE grade_student_module DROP INDEX Student ID_3

这让我在ID_3附近的mysql synthax中出现了1064错误

当我从grade_student_module进入显示索引时,学生ID_3被列为关键列下的索引。

基本上我试图找到一种方法从表中删除所有索引和约束和键以删除单个空格,以便我可以对表执行简单查询。除了DROP INDEX之外还有什么方法可以做到这一点吗?我不被允许删除索引的原因是因为索引名称本身有空格吗?

非常感谢。

1 个答案:

答案 0 :(得分:4)

通常,不应在表,列或约束名称中包含空格。但是当你这样做时,你必须在反引号包围的任何声明中引用它们。

ALTER TABLE grade_student_module DROP INDEX `Student ID_3`