2012-06-06 52 views
0
CREATE TABLE `myDB`.`usersystem` (
`userid` INT NOT NULL AUTO_INCREMENT , 
`username` VARCHAR(50) NOT NULL , 
`password` VARCHAR(32) NOT NULL , 
`email` VARCHAR(50) NOT NULL , 
PRIMARY KEY (`userid`) 
); 

對不起,我會搜索,但我不知道如何搜索這樣一個具體的誤解。這個MySQL語句如何工作?

我開始學習MySQL,並且我感覺很舒服,但我很困惑反引號是什麼,以及爲什麼當表創建時它有一段時間。用戶系統表示什麼?

+0

Backticks:http://stackoverflow.com/questions/1962859/importance-of-backtick-around-table-name-in-mysql-query – ChrisW

回答

1

所有你不明白的東西都可以在不改變這個陳述的意思的情況下被刪除!

反引號僅供引用;它們是可選的,但它們區分關鍵字和表或列的名稱。如果你想要一張名爲SELECT的表格,將表格名稱放在這樣的引號中可以讓你創建一個表格。

默認情況下,反引號用於引用標識符,但有一個特殊的ANSI_QUOTES模式,如果激活它,則可以使用雙引號字符代替。單引號用於引用字符串。

myDB.usersystem涉及名爲myDB的數據庫中名爲usersystem的表。命名數據庫是可選的,因爲它默認爲連接的數據庫。您還可以使用use命令來設置隱式數據庫,如「use myDB」中所述。

+0

哦好吧,所以如果我可以的話,這兩個問題! 1.反引號是否可以與'和「互換?2.我可以通過事先輸入'use myDB'來刪除'myDB.'部分嗎? –

+0

@DougSmith,在編輯中回答了這些問題。 –

1

Backkticks阻止名稱被解釋爲SQL關鍵字,因此您可以創建表名稱,如createdate

點將表格名稱與表格名稱分開。

模式允許您爲不同目的命名相同的表,例如N個不同應用程序中的用戶表。

1

usersystem是表名,myDB是數據庫名。

<database name><table name>是引用表的完全合格方式。

後退標記用於表示資源的名稱。他們並不總是必要的,但使用它們是一個好習慣。