程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> MYSQL數據庫 >> MySQL綜合教程 >> MySQL筆記之修正表的完成辦法

MySQL筆記之修正表的完成辦法

編輯:MySQL綜合教程

MySQL筆記之修正表的完成辦法。本站提示廣大學習愛好者:(MySQL筆記之修正表的完成辦法)文章只能為提供參考,不一定能成為您想要的結果。以下是MySQL筆記之修正表的完成辦法正文


我們在創立表的進程中不免會斟酌不周,是以前期會修正表

修正表須要用到alter table語句


修正表名

mysql> alter table student rename person;
Query OK, 0 rows affected (0.03 sec)

這裡的student是原名,person是修正事後的名字

用rename來重定名,也能夠應用rename to

還有一種辦法是rename table old_name to new_name


修正字段的數據類型

mysql> alter table person modify name varchar(20);
Query OK, 0 rows affected (0.18 sec)
Records: 0  Duplicates: 0  Warnings: 0

此處modify前面的name為字段名,我們將本來的varchar(25)改成varchar(20)


修正字段名

mysql> alter table person change stu_name name varchar(25);
Query OK, 0 rows affected (0.20 sec)
Records: 0  Duplicates: 0  Warnings: 0

這裡stu_name是原名,name是新名

須要留意的是不論改不改數據類型,前面的數據類型都要寫

假如不修正數據類型只需寫成本來的數據類型便可

tips:我們異樣可使用change來到達modify的後果,只需在厥後寫一樣的字段名


增長無完全性束縛前提的字段

mysql> alter table person add sex boolean;
Query OK, 0 rows affected (0.21 sec)
Records: 0  Duplicates: 0  Warnings: 0

此處的sex前面只跟了數據類型,而沒有完全性束縛前提


增長有完全性束縛前提的字段

mysql> alter table person add age int not null;
Query OK, 0 rows affected (0.17 sec)
Records: 0  Duplicates: 0  Warnings: 0

此處增長了一條age字段,接著在前面加上了not null完全性束縛前提


增長額定的完全性束縛前提

mysql> ALTER TABLE person ADD PRIMARY KEY(id);
Query OK, 0 rows affected (0.18 sec)
Records: 0  Duplicates: 0  Warnings: 0

這裡異樣也用於多字段設置


在表頭添加字段

mysql> alter table person add num int primary key first;
Query OK, 0 rows affected (0.20 sec)
Records: 0  Duplicates: 0  Warnings: 0

默許情形下添加字段都是添加到表尾,在添加語句前面加上first就可以添加到表頭


在指定地位添加字段

mysql> alter table person add birth date after name;
Query OK, 0 rows affected (0.20 sec)
Records: 0  Duplicates: 0  Warnings: 0

這裡添加一條新字段放在name字段前面

 tips:表中字段的排序對表不會有甚麼影響,不外更公道的排序能便於懂得表


刪除字段

mysql> alter table person drop sex;
Query OK, 0 rows affected (0.18 sec)
Records: 0  Duplicates: 0  Warnings: 0

和後面刪除表或數據庫一樣,這裡也須要用drop

分歧的是,刪除字段還要用alter table隨著表名

修正字段到第一個地位

mysql> alter table person modify id int first;
Query OK, 0 rows affected (0.20 sec)
Records: 0  Duplicates: 0  Warnings: 0

first在後面曾經講過,此處要留意的是字段前面要寫數據類型


修正字段到指定地位

mysql> alter table person modify name varchar(25) after id;
Query OK, 0 rows affected (0.18 sec)
Records: 0  Duplicates: 0  Warnings: 0

我們把name字段放到了id前面,此處的varchar(25)要寫全,varchar不可

建議操作以上步調之前都先desc table


修正表的存儲引擎

mysql> alter table user rename person;
Query OK, 0 rows affected (0.05 sec)

這裡先不詳細講各個存儲引擎的特色,內容比擬多

修正完以後別忘了應用show create table語句檢查,第三節有寫用法

tips:假如表中已存在許多數據,不要隨意馬虎修正存儲引擎


增長表的外鍵

mysql> alter table score add constraint fk foreign key(stu_id) references student(id);
Query OK, 10 rows affected (0.18 sec)
Records: 10  Duplicates: 0  Warnings: 0

這裡只需應用add增長便可,前面的語法拜見第四節中的外鍵設置


刪除主鍵

mysql> ALTER TABLE person DROP PRIMARY KEY;
Query OK, 0 rows affected (0.22 sec)
Records: 0  Duplicates: 0  Warnings: 0

因為主鍵沒有別號,所以應用drop會刪除一切主鍵


刪除表的外鍵束縛

mysql> alter table student3 drop foreign key fk;
Query OK, 0 rows affected (0.18 sec)
Records: 0  Duplicates: 0  Warnings: 0

因為根本的表構造描寫沒法顯示外鍵,所以在停止此操作前最好應用show create table檢查表

這裡的fk就是方才設置的外鍵

須要留意的是:假如想要刪除有聯系關系的表,那末必先刪除外鍵

刪除外鍵後,本來的key釀成通俗鍵

至於刪除表的操作,在第三節有寫,設置外鍵在第四節也有寫

假如創立表的時刻沒有設置外鍵,可以使用下面的辦法

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved