对 MySQL information_schema.tables 信息感到困惑
Puzzled by MySQL information_schema.tables info
由于某些未知原因,'information_schema.tables' 的信息与真实的 tables 不匹配:
先,从information_schema.tables中找table-name,有一个结果;
然后,select * from table-name,显示table不存在! /(ㄒoㄒ)/~~
我尝试创建一个同名的新table(MyISAM 引擎),创建成功!
然后,从information_schema.tables中查找table-name,有两个结果!
而 select * from table-name 显示空集,这是正常的。
到目前为止,table可以使用,但不能完全丢弃。
如果下降 table,它 return "First"。
如下图:
all the step
我在网上找了很久。但是没有用。请帮助或尝试提供一些想法如何实现这一目标......
图像对我来说没有任何问题。当你 运行 这个:
SELECT TABLE_NAME FROM INFORMATION_SCHEMA.TABLES WHERE
TABLE_NAME = 'report_instance_performance_20160614
并得到一个结果,您可能会在与您 运行 该查询不同的架构中获得该名称的 table 结果。 运行 这个看看有没有错会更有帮助:
SELECT TABLE_SCHEMA, TABLE_NAME FROM INFORMATION_SCHEMA.TABLES WHERE
TABLE_NAME = 'report_instance_performance_20160614'
我断言 table 存在于另一个模式中,而不是你在查询中 运行ning 的那个模式是你在以下情况下收到 doesn't exist
错误你试试 SELECT
从它。
接下来,当您创建 table 的新实例,然后 运行 您的 INFORMATION_SCHEMA.TABLES
查询时,您会得到两个结果,因为您现在已经创建了一个 table 在当前架构中使用该名称。如果该 table 已存在于您当前的模式中,您将收到一个错误消息,即该名称的 table 已存在于该模式中。这进一步支持了我的断言,即 report_instance_performance_20160614
存在于不同的模式中。
最后,由于 table 是新创建的,并且您在 SELECT
从中 INSERT
之前没有向 table 编辑任何内容,这是完全正常的table 将是空的。
由于某些未知原因,'information_schema.tables' 的信息与真实的 tables 不匹配:
先,从information_schema.tables中找table-name,有一个结果; 然后,select * from table-name,显示table不存在! /(ㄒoㄒ)/~~
我尝试创建一个同名的新table(MyISAM 引擎),创建成功! 然后,从information_schema.tables中查找table-name,有两个结果! 而 select * from table-name 显示空集,这是正常的。
到目前为止,table可以使用,但不能完全丢弃。 如果下降 table,它 return "First"。
如下图: all the step
我在网上找了很久。但是没有用。请帮助或尝试提供一些想法如何实现这一目标......
图像对我来说没有任何问题。当你 运行 这个:
SELECT TABLE_NAME FROM INFORMATION_SCHEMA.TABLES WHERE
TABLE_NAME = 'report_instance_performance_20160614
并得到一个结果,您可能会在与您 运行 该查询不同的架构中获得该名称的 table 结果。 运行 这个看看有没有错会更有帮助:
SELECT TABLE_SCHEMA, TABLE_NAME FROM INFORMATION_SCHEMA.TABLES WHERE
TABLE_NAME = 'report_instance_performance_20160614'
我断言 table 存在于另一个模式中,而不是你在查询中 运行ning 的那个模式是你在以下情况下收到 doesn't exist
错误你试试 SELECT
从它。
接下来,当您创建 table 的新实例,然后 运行 您的 INFORMATION_SCHEMA.TABLES
查询时,您会得到两个结果,因为您现在已经创建了一个 table 在当前架构中使用该名称。如果该 table 已存在于您当前的模式中,您将收到一个错误消息,即该名称的 table 已存在于该模式中。这进一步支持了我的断言,即 report_instance_performance_20160614
存在于不同的模式中。
最后,由于 table 是新创建的,并且您在 SELECT
从中 INSERT
之前没有向 table 编辑任何内容,这是完全正常的table 将是空的。