Linux下的MySQL數(shù)據(jù)庫(kù)支持表名區(qū)分大小寫(xiě),這意味著在創(chuàng)建表時(shí),大小寫(xiě)會(huì)對(duì)表名產(chǎn)生影響。在使用MySQL時(shí),要注意這一點(diǎn),以免出現(xiàn)不必要的錯(cuò)誤。
CREATE TABLE Demo ( id INT(11) NOT NULL AUTO_INCREMENT, name VARCHAR(50) NOT NULL, PRIMARY KEY (id) ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
在上面的代碼中,我們創(chuàng)建了一個(gè)表名為“Demo”的表。如果我們嘗試創(chuàng)建一個(gè)同名但大小寫(xiě)不同的表,“demo”或“DEMO”,MySQL會(huì)認(rèn)為它是一個(gè)不同的表。
CREATE TABLE demo ( id INT(11) NOT NULL AUTO_INCREMENT, name VARCHAR(50) NOT NULL, PRIMARY KEY (id) ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
如果我們?cè)俅螄L試創(chuàng)建一個(gè)名為“demo”的表,MySQL會(huì)提示錯(cuò)誤,因?yàn)樵摫硪呀?jīng)存在。
ERROR 1050 (42S01): Table 'demo' already exists
當(dāng)我們查詢(xún)表時(shí),同樣要注意表名大小寫(xiě)問(wèn)題。下面是一個(gè)例子:
SELECT * FROM Demo;
如果我們寫(xiě)成以下代碼,結(jié)果會(huì)返回一個(gè)錯(cuò)誤:
SELECT * FROM demo;
ERROR 1146 (42S02): Table 'test.demo' doesn't exist
在使用MySQL時(shí),要注意表名的大小寫(xiě),以免產(chǎn)生不必要的錯(cuò)誤。