2010-03-01 33 views
2

檢查數據庫生成SQL(看起來很好):MySQL的說表是存在的,那麼說,這不是

CREATE TABLE `HourOfDay` (
    `id` int(11) NOT NULL, 
    `hourString` varchar(2) NOT NULL, 
    PRIMARY KEY (`id`) 
) ENGINE=MyISAM DEFAULT CHARSET=latin1; 

檢查文件系統(它的存在):

# ls -al Mycomp_test | grep -i hour 
-rw-rw---- 1 _mysql wheel  0 Mar 1 08:13 HourOfDay.MYD 
-rw-rw---- 1 _mysql wheel 1024 Mar 1 08:13 HourOfDay.MYI 
-rw-rw---- 1 _mysql wheel 8598 Mar 1 08:13 HourOfDay.frm 

檢查數據庫(看起來不錯):

»mysql -u root Mycomp_test -e 'show tables' | grep -i hour 
HourOfDay 

檢查數據庫表(哎呀跆拳道!?):

»mysql -u root Mycomp_test -e 'show create table HourOfDay' 
ERROR 1146 (42S02) at line 1: Table 'mycomp_test.hourofday' doesn't exist 

UPDATE:更多信息

  • 這是一個OSX系統運行MySQL-5.1.38-osx10.5-x86_64的

  • 如果我刪除該數據庫並重新創建它,我得到相同的錯誤(它可靠地重現)。

回答

1

8.2.2。 Identifier Case Sensitivity

»cat /etc/my.cnf 
[mysqld] 
lower_case_table_names=2 
+0

我會試試lower_case_table_named = 0 – MindStalker 2010-03-01 15:04:58

+0

我做過;沒有工作:-) – 2010-03-01 15:11:05

+0

它是否適用於所有小寫名稱的表格? CREATE TABLE'hourofday'如果是這樣,這不是問題。 – MindStalker 2010-03-01 20:09:59

1

Table 'mycomp_test.hourofday' doesn't exist」 是可疑的,因爲它應該是HourOFDay在Unix/Linux系統上。

+0

這是所有的Unix/Linux或有一個Windows系統文件共享與Linux/UNIX系統? – MindStalker 2010-03-01 13:44:04

+0

mysql-5.1.38-osx10.5-x86_64 – 2010-03-01 14:28:43

相關問題