phpMyAdmin不显示表格

时间:2012-09-23 20:16:52

标签: php mysql database phpmyadmin

我目前在phpMyAdmin上遇到了一个相当奇怪的问题,它似乎允许我查看我的数据库,但我无法查看其中包含的表,除非我执行一个单独的select命令命令控制台。我似乎无法弄清楚发生了什么。这是相当烦人的,因为我不想每次要添加新列等时都要执行alter命令。有人知道发生了什么吗?

4 个答案:

答案 0 :(得分:7)

有同样的问题。但只有在新创建的数据库中导入转储后才能使用。通过mysql.exe显示表确实列出了表。 原因是导入文件(或转储文件)包含视图定义,如下所示:

/*!50001 DROP TABLE IF EXISTS `view_myview`*/;
/*!50001 DROP VIEW IF EXISTS `view_myview`*/;
/*!50001 SET @saved_cs_client          = @@character_set_client */;
/*!50001 SET @saved_cs_results         = @@character_set_results */;
/*!50001 SET @saved_col_connection     = @@collation_connection */;
/*!50001 SET character_set_client      = latin1 */;
/*!50001 SET character_set_results     = latin1 */;
/*!50001 SET collation_connection      = latin1_swedish_ci */;
/*!50001 CREATE ALGORITHM=UNDEFINED */
/*!50013 DEFINER=`root`@`%` SQL SECURITY DEFINER */
/*!50001 VIEW `view_myview` AS select `p`.`id` AS blabla */;
/*!50001 SET character_set_client      = @saved_cs_client */;
/*!50001 SET character_set_results     = @saved_cs_results */;
/*!50001 SET collation_connection      = @saved_col_connection */;

从文件中删除视图定义,再次执行导入,并在phpMyAdmin中显示表格。当然缺乏观点,但当时我并不需要它们。 我认为真正的原因与DEFINER系列有关:

 /*!50013 DEFINER=`root`@`%` SQL SECURITY DEFINER */

Same issue described here

答案 1 :(得分:1)

在我的情况下,它是浏览器(Firefox)的某种缓存问题。在私人窗口或其他浏览器中打开phpMyAdmin后,我可以再次看到所有表格。

答案 2 :(得分:0)

答案 3 :(得分:-1)

尝试按CTRL + F5(Windows用户)或Command + F5(Mac用户)以强制您的浏览器清除缓存并重新加载。