2

我有一个 MySQL 数据库表,它已用区分大小写的名称列出了两次。

两个表名都指向同一个表,例如Adminadmin

在此处输入图像描述

当我检查 information_schema 时,它列出如下:

mysql> SELECT  TABLE_CATALOG,  TABLE_NAME ,  TABLE_TYPE, ENGINE, CREATE_TIME   
FROM information_schema.tables 
where table_schema='school';

在此处输入图像描述

我该如何收拾这个烂摊子?

4

1 回答 1

-1

通常 MySQL 不允许您创建区分大小写的表。它将错误显示为:

ERROR 1050 (42S01): Table 'admin' already exists

但是 MySQL 允许您使用现有名称创建临时表,因为它们没有相同的“范围”。临时表仅在会话中可见,并在会话结束时被删除。如果您有相同的名称,MySQL 会“隐藏”原始表,直到您删除临时表。

我建议您备份现有数据并将 MySql 版本更新为 5.7 。

于 2019-08-12T16:33:29.693 回答