Mysql select总是返回空集

时间:2015-07-26 01:55:02

标签: mysql

因此,由于某种原因,我的Mysql表总是返回一个空集

mysql> show table status like 'test_table';
+-----------------+--------+---------+------------+---------+----------------+-------------+-----------------+--------------+------------+----------------+---------------------+-------------+------------+--------------------+----------+----------------+---------+
| Name            | Engine | Version | Row_format | Rows    | Avg_row_length | Data_length | Max_data_length | Index_length | Data_free  | Auto_increment | Create_time         | Update_time | Check_time | Collation          | Checksum | Create_options | Comment |
+-----------------+--------+---------+------------+---------+----------------+-------------+-----------------+--------------+------------+----------------+---------------------+-------------+------------+--------------------+----------+----------------+---------+
| test_table      | InnoDB |      10 | Compact    | 1625218 |            749 |  1218363392 |               0 |            0 | 1234173952 |           NULL | 2015-07-25 12:03:40 | NULL        | NULL       | utf8mb4_unicode_ci |     NULL |                |         |
+-----------------+--------+---------+------------+---------+----------------+-------------+-----------------+--------------+------------+----------------+---------------------+-------------+------------+--------------------+----------+----------------+---------+
1 row in set (0.00 sec)

mysql> select * from test_table;
Empty set (0.00 sec)

mysql> 

关于我如何调试这个的任何建议?

这是创建表

| test_table | CREATE TABLE `test_table` (
  `export_date` bigint(20) DEFAULT NULL,
  `id` int(11) NOT NULL DEFAULT '0',
  `title` varchar(1000) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `recommended_age` varchar(20) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `artist_name` varchar(1000) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `seller_name` varchar(1000) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `company_url` varchar(1000) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `support_url` varchar(1000) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `view_url` varchar(1000) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `artwork_url_large` varchar(1000) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `artwork_url_small` varchar(1000) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `release_date` datetime DEFAULT NULL,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci |

3 个答案:

答案 0 :(得分:0)

可能mySQL服务器不知道您正在搜索哪个数据库,并且默认为表不存在的默认架构?

尝试将USE动词与您的数据库名称一起使用。 例如:如果您的数据库名为db1且您的表是mytable。

USE db1;

SELECT * FROM mytable;

#从db1.mytable中选择

答案 1 :(得分:0)

您的数据可能未正确刷新到表中,通过以下命令运行flush表,然后再次检查。

FLUSH TABLES;

答案 2 :(得分:0)

原来这是一个进口问题。我使用Python脚本导入了我的数据,并且没有将autocommit设置为true(脚本是为旧版本的MYSQL编写的)