程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> MYSQL數據庫 >> MySQL綜合教程 >> mysql表的基本操作匯總(三)

mysql表的基本操作匯總(三)

編輯:MySQL綜合教程

mysql表的基本操作匯總(三)。本站提示廣大學習愛好者:(mysql表的基本操作匯總(三))文章只能為提供參考,不一定能成為您想要的結果。以下是mysql表的基本操作匯總(三)正文


針對mysql表停止的基本操作,詳細內容以下

1.創立表:
創立表的語法情勢:

CREATE TABLE table_name(
 屬性名 數據類型,
 屬性名 數據類型,
 ...
 屬性名 數據類型
)

示例:

CREATE TABLE t_dept(
 deptno int,
 dname varchar(20),
 loc varchar(20)

備注:在創立表之前,平日你須要應用 USE 庫名;如許一條語句來選擇一個庫,在所選擇的庫中創立表。關於表名標識符,不克不及是mysql的症結字,如 CREATE、USE等,建議表名標識符為t_xxx或許tab_xxx;各屬性之間用逗號離隔,最初一個屬性後不須要應用逗號。

2.檢查表構造:
2.1 DESCRIBE語句檢查表的界說 
    USE 庫名; //選擇一個庫
    DESCRIBE 表名; //檢查表的界說信息,DESCRIBE可使用DESC取代也可
2.2 SHOW CREATE TABLE 語句檢查表的具體界說 
    USE 庫名; //選擇一個庫
    SHOW CREATE TABLE 表名 \G 表名; //檢查表的界說信息
備注: 在顯示表的具體界說信息時,可使用”;” “\g” “\G” 符號來停止,為了讓成果顯示的加倍雅觀,便於用戶檢查,最好應用\G 來停止。

3.刪除表:
刪除表的語法情勢:
    USE 庫名; //選擇一個庫
    DROP TABLE 表名; //刪除指定表名的表

4.修正表:
4.1 修正表名 
    關於曾經創立好的表, 應用一段時光後就須要一些構造上的修正,即表的修正操作。為何不直接刪除表,再依照新的表的界說來創立表呢?緣由是假如表中曾經存在年夜量的數據,那末重建後還須要做很多額定的任務,例如數據的重載等。為懂得決上述成績,mysql供給了ALTER TABLE 語句來完成修正表構造。
    修正表名的語法情勢:ALTER TABLE old_table_name REANME [TO] new_table_name;
4.2 增長字段 
    4.2.1在表的最初一個地位增長字段
        語法情勢為:ALTER TABLE table_name ADD 屬性名 屬性類型;
    4.2.2在表的第一個地位增長字段
        語法情勢為:ALTER TABLE table_name ADD 屬性名 屬性類型 FIRST;
    4.2.3在表的指定字段以後增長字段
        語法情勢為:ALTER TABLE table_name ADD 屬性名 屬性類型 AFTER 屬性名;
4.3 刪除字段 
    刪除字段的語法情勢:ALTER TABLE table_name DROP 屬性名;
4.4 修正字段 (修正數據類型溫柔序必需是MODIFY,修正名字或名字和屬性必需是CHANGE) 
    4.4.1 修正字段的數據類型
    語法情勢為:ALTER TABLE table_name MODIFY 屬性名 數據類型; //數據類型為修正後的數據類型
    4.4.2 修正字段的名字
    語法情勢為:ALTER TABLE table_name CHANGE 舊屬性名 新屬性名 舊數據類型;
    4.4.3 同時修正字段的名字和屬性
    語法情勢為:ALTER TABLE table_name CHANGE 舊屬性名 新屬性名 新數據類型;
    4.4.4 修正字段的次序
    語法情勢為:ALTER TABLE table_name MODIFY 屬性名1 數據類型 FIRTST| AFTER 屬性名2;
    //”屬性名1”參數表現所要調劑次序的字段名,”FITST”參數表現將字段調劑到表的第一個地位,”AFTER 屬性名2”表現將字段調劑到屬性名2字段的地位以後。

5.操作表的束縛:
5.1 MySQL支撐的完全性束縛 
    所謂完全性是指數據的精確性和分歧性,而完全性檢討是指檢討數據的精確性和分歧性。MySQL供給了一種機制來檢討數據庫表中的數據能否知足劃定的前提,以包管數據庫中數據的精確性和分歧性,這類機制就是束縛。MySQL除支撐尺度SQL的完全性束縛外,還擴大增長了AUTO_INCREMENT束縛。
    1. NOT NULL //束縛字段的值不克不及為空
    2. DEFAULT //設置字段的默許值
    3. UNIQUE KEY(UK) //束縛字段的值是獨一
    4. PRIMARY KEY(PK) //束縛字段為表的主鍵,可以作為該表記載的獨一標識
    5. AUTO_INCREMENT //束縛字段的值為主動增加
5.2 設置非空束縛(NOT NULL, NK) 
    在創立數據庫表時,為某些字段加上”NOT NULL”束縛前提,包管一切記載中的該字段都是有值的。 設置非空束縛的語法情勢為: 

 CREATE TABLE table_name ( 
  屬性名 數據類型 NOT NULL, 
 ); 

5.3 設置字段的默許值(DEFAULT) 
    當為數據庫表中拔出一條新記載時,假如沒無為某個字段賦值,那末數據庫體系會主動為這個字段拔出默許值。設置數據庫表中某個字段的默許值語法情勢為: 

 CREATE TABLE table_name ( 
  屬性名 數據類型 DEFAULT 默許值, 
 );

5.4 設置獨一束縛(UNIQUE, UK) 
    當數據庫表中的某個字段上的內容不許可反復時,則可使用UK束縛停止設置。即UK束縛在創立數據庫表時為某些字段加上”UNIQUE”束縛前提,包管一切記載中該字段上的值不反復。
    設置獨一束縛語法情勢為:

CREATE TABLE table_name(
 屬性名 數據類型 UNIQUE,
);

例如:

CREATE TABLE t_dept(
 deptno INT ,
 dname VARCHAR(20) UNIQUE,
 loc VARCHAR(40) 
);

    假如想給字段dname上的UK束縛設置一個名字,可以履行SQL語句CONSTRAINT,示例以下:

CREATE TABLE t_dept(
 deptno INT,
 dname VARCHAR(20),
 loc VARCHAR(40),
 CONSTRAINT uk_dname UNIQUE(dname)
);
//在為束縛設標識符時,推舉應用“束縛縮寫_字段名",是以設置為uk_dname;

5.5 設置主鍵束縛(PRIMARY KEY , PK) 
    當想用數據庫表中的某個字段來獨一標識一切記載時,則可使用PK束縛停止設置。在數據庫表中之所以設置主鍵,是為了便於疾速的查找到表中的記載。在詳細設置主鍵束縛時,必需要知足主鍵字段的值是獨一、非空的。主鍵可使單一字段,也能夠是多個字段,是以分為單字段主鍵和多字段主鍵。主鍵束縛相當於 非空束縛 加上 獨一束縛。
    5.5.1 單字段主鍵
    設置PK束縛,語法情勢以下:

CREATE TABLE table_name(
 屬性名 數據類型 PRIMARY KEY,
);

    假如想給字段deptno上的PK束縛設置一個名字,可使用CONSTRAINT,示例以下:

CREATE TABLE table_name(
 deptno INT,
 dname VARCHAR(20),
 loc VARCHAR(40),
 CONSTRAINT pk_deptno PRIMARY KEY(deptno)
);

    5.5.2 多字段主鍵
    當主鍵有多個字段組合而成時,則須要經由過程SQL語句CONSTRAINT來完成,其語法情勢以下:

CREATE TABLE table_name(
 屬性名 數據類型,
 ......
 [CONSTRAINT 束縛名]PRIMARY KEY (屬性名,屬性名......)
);

5.6 設置字段值主動增長(AUTO_INCREMENT) 
    AUTO_INCREMENT 是MySQL獨一擴大的獨一性束縛,當為數據庫表中拔出新記載時,字段上的值會生成獨一的ID,在數據庫表中只能有一個字段應用該束縛,該字段的數據類型必需是整數類型,因為設置自增加字段會生成獨一的ID,所以該字段也常常設置成PK主鍵。
    設置自增加語法情勢以下:

CREATE TABLE table_name(
 屬性名 數據類型 AUTO_INCREMENT, //默許字段的值是從1開端增長,每增長一條在前一條的基本上加1
 deptno INT PRIMARY KEY AUTO_INCREMENT, //平日都邑和PK一路寫
);

5.7 設置外鍵束縛(FOREIGN KEY ,FK) 
    後面的完全性束縛都是在單表中停止設置,而外鍵束縛平日包管兩個表之間的參照完全性,即構建於兩個表的兩個字段之間的參照關系。在詳細設置FK束縛時,設置FK束縛的字段必需依附於數據庫中曾經存在的”一”(一對多中的一)的一方的主鍵,同時外鍵可以設置為null。
    設置FK束縛的語法情勢以下:

CREATE TABLE table_name(
 屬性名 數據類型,
 屬性名 數據類型,
 [CONSTRAINT 外鍵束縛名] FOREIGN KEY (屬性名1) REFERENCES 表名 (屬性名2)
//備注:"外鍵束縛名"用來標識束縛名,"屬性名1"參數是"多"的一方表中設置外鍵的字段名,"屬性2"中,參數是"一"的一方設置主鍵束縛的字段名。
)

以上就是本文的全體內容,願望對年夜家的進修有所贊助,也願望年夜家多多支撐。

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