mysql復制表結構create table as和like的區別


對於MySQL的復制相同表結構方法,有create table as 和create table like 兩種,區別是什么呢?

create table t2 as select * from t1 where 1=2;
或者 limit 0;

as創建出來的t2表(新表)缺少t1表(源表)的索引信息,只有表結構相同,沒有索引。

create table t2 like t1 ;

like 創建出來的新表包含源表的完整表結構和索引信息。

二者的用途:
as用來創建相同表結構並復制源表數據。
like用來創建完整表結構和全部索引。

oracle支持as,也是只有表結構沒有索引,oracle不支持like。
兩種方式在復制表的時候均不會復制權限對表的設置。比如說原本對表B做了權限設置,復制后,表A不具備類似於表B的權限。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM