Mysql 单个数据库中的 InnoDB 和 MyISAM

Mysql InnoDB and MyISAM in single database

我有数据库,其中有 InnoDB 和 MyISAM 表。 (用于 PK 的 InnoDB 和用于全文索引的 MyISAM)。在 localhost 上一切正常,但在 endora 虚拟主机上(我有高级帐户)我在尝试搜索时遇到此错误。

[2015-07-07 18-59-36] PDOException: SQLSTATE[42S02]: Base table or view not found: 1146 Table 'trwcaeprojectmanagement.searchProjects' doesn't exist in /home/users/lubossuk/caejab.8u.cz/web/vendor/nette/database/src/Database/ResultSet.php:68 @ http://caejab.8u.cz/www/search/search?w … mit=Search @@ exception-2015-07-07-18-59-36-fc34eacf91f6a41f05fa4aaaba2bb24d.html

有人遇到过这个问题吗?

是的,我犯了一个大错。真的是大写P,我觉得好傻

这看起来像是 table 名称中 "case sensitivity" 的问题。

看起来 table 名称在您的网络托管环境中区分大小写,但在您的本地主机上不区分大小写。


参考:9.2.2 Identifier Case Sensitivity https://dev.mysql.com/doc/refman/5.5/en/identifier-case-sensitivity.html

To avoid problems caused by such differences, it is best to adopt a consistent convention, such as always creating and referring to databases and tables using lowercase names. This convention is recommended for maximum portability and ease of use.