Linux下的MySQL數據庫支持表名區(qū)分大小寫,這意味著在創(chuàng)建表時,大小寫會對表名產生影響。在使用MySQL時,要注意這一點,以免出現不必要的錯誤。
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)建了一個表名為“Demo”的表。如果我們嘗試創(chuàng)建一個同名但大小寫不同的表,“demo”或“DEMO”,MySQL會認為它是一個不同的表。
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)建一個名為“demo”的表,MySQL會提示錯誤,因為該表已經存在。
ERROR 1050 (42S01): Table 'demo' already exists
當我們查詢表時,同樣要注意表名大小寫問題。下面是一個例子:
SELECT * FROM Demo;
如果我們寫成以下代碼,結果會返回一個錯誤:
SELECT * FROM demo;
ERROR 1146 (42S02): Table 'test.demo' doesn't exist
在使用MySQL時,要注意表名的大小寫,以免產生不必要的錯誤。