8.2.4临时表和正式表
區別:
1.不同的客戶端可以創建名字相同的臨時表而沒有沖突
?2.一個臨時表被創建僅僅在連接期間,當客戶端斷開連接時自動刪掉臨時表。
3.一個臨時表可以和一個非臨時表有同樣的名字。
4.一個臨時表可以被重新命名只能使用alter而不能使用rename table。
臨時表和內存表的區別是,內存表在服務器重啟是丟失。
8.3 修改表
在創建表后,修改表增加一列
alter table ?HeadOfState ADD Inauguration DATE Not NULL;
Describe輸出,當你增加一列到一個表,MySQL放置他在所有存在的列,可以使用FIRST或者AFETR+column_name到指定的位置。
8.3.2 修改為存在列
有兩種方式:
1.使用MODIFY語句,你必須指定列名。如 alter table headOfState modify ID BIGINT unsigned not null;
2. 使用Change語句,Change語句能夠使你來修改列的定義和它的名字。但是改變列是,必須指定原來的表或列兩次,如:改變LastName列from CHAR(30) to CHAR(40)沒有重新命名指定的:alter table HeadOfState Change LastName CHar(40) not NULL;重新命名列明如下:
alter table HeadOfState Change LastName Surname Char(40) NOT NULL;
8.3.3 重新命名表
1.alter table t1 ranme to t2;
另外的一種方式是rename table t1 to t2;對于臨時表rename table不能起到作用必須使用alter
8.3.4 指定多個表的修改
你可以指定多個修改對于一張表使用一個單獨altertable語句,使用,分隔。如:
alter table HeadOfState RENAME TO CountryLeader,Modify ID BiGINT unsigned not null,Add Salutation CHAR(30) NULL after FirstName;
8.4 刪除表
為了移除不使用drop table t;
drop table t1,t2,t3;
8.5 把一張表設置為空
delete from it;
Truncate table t;
delete from t where status='exipred';
總結
以上是生活随笔為你收集整理的8.2.4临时表和正式表的全部內容,希望文章能夠幫你解決所遇到的問題。