在MySQL中,下面的查詢,這是從學生的新創建mysql的創建像查詢
CREATE TABLE `t1` LIKE `student`
T1,都會有相同的架構和foriegn鍵像爲學生或沒有。這是我的疑問。
任何人都可以清除我的疑問嗎?
在MySQL中,下面的查詢,這是從學生的新創建mysql的創建像查詢
CREATE TABLE `t1` LIKE `student`
T1,都會有相同的架構和foriegn鍵像爲學生或沒有。這是我的疑問。
任何人都可以清除我的疑問嗎?
表T1有一個像學生和外鍵相同的架構,但它是空表。 Ref
對於細節,
> CREATE TABLE new_tbl SELECT * FROM orig_tbl;
在這種情況下,從原來的表中的所有數據被複制到新表,但架構相關的信息,如primay關鍵contratint不包括。
> CREATE TABLE new_tbl LIKE orig_tbl;
在這種情況下,新表具有相同架構的原始表,但沒有數據。
從here報價:
使用LIKE創建一個基於另一個表的定義一個空表,包括在原表中定義的任何列屬性和索引:
CREATE TABLE new_tbl LIKE orig_tbl ;
副本將使用該表存儲格式與原始表相同版本創建的。原始表上需要SELECT權限。
LIKE僅適用於基表,不適用於視圖。
CREATE TABLE ... LIKE不保留原始表中指定的任何數據目錄索引目錄表的選項,或任何外鍵定義。
你爲什麼不只是嘗試?這樣你解決這個問題,無論如何。 – LSerni
做完你的'CREATE TABLE t1 LIKE學生;'做一個'SHOW CREATE TABLE t1;'來檢查它。 –