MySQL 3 資料表的基本操作

2021-09-03 07:19:07 字數 2397 閱讀 9063

建立資料表:

create table《表名》

欄位名1, 資料型別[列級別的約束條件][預設條件]

[表級別約束條件]

在定義列的同時指定主鍵:

欄位名 資料型別 primaey_key[預設值] 

在定義完所有列之後指定主鍵:

[constrint《約束名》]primary key[欄位名]

定義多欄位聯合主鍵:

primary key[欄位1,欄位2,...欄位n]

使用外來鍵約束:

[constraint《外鍵名》]foreign key 欄位名1 [,欄位名2,...] references《主表名》主鍵1[,主鍵列2,...]

「外鍵名」為定義的外來鍵約束的名稱,乙個表中不能有相同名稱的外來鍵。

使用非空約束:

欄位名 資料型別 not null 

使用唯一性約束:

欄位名 資料型別 unique 

在定義完所有列後指定唯一約束,語法規則如下:

[constraint《約束名》] unique(《欄位名》)

unique和primary key的區別:乙個表可以有多個字段宣告為unique,但只能有乙個primary key宣告:宣告為primay key的列不允許有空值,但是宣告為unique的字段允許空值(null)的存在。

預設約束指定某列的預設值,預設約束的語法規則如下:

欄位名 資料型別 defualt 預設值

在資料庫應用中,經常希望在每次插入新記錄時,系統自動生成欄位的主鍵值。可以通過為表主鍵新增auto_increment關鍵字來實現。預設的,在mysql中auto_increment的初始值是1,每增加一條記錄,字段值自動加1.乙個表只能有乙個字段使用auto_increment約束,且該字段必須為主鍵的一部分。auto_increment約束的字段可以是任何整數型別(tinyint,smallin,int,bigint等) 。

設定唯一性約束的語法規則如下:

欄位名 資料型別 auto_increment

檢視資料表結構,語法如下:

describe/desc 表名; 

其中,各個欄位的含義分別解釋如下:

檢視表詳細結構語句:

show  create table《表名\g>; 

如果不加'\g'引數,顯示的結果可能非常混亂,加上引數『\g'之後,可使顯示結果更加直觀,易於檢視。

修改表名:

alter table《舊表名》rename[to]《新錶名》; 

修改欄位的資料型別:

alter table《表名》 modify 《欄位名》 《資料型別》 

修改欄位名:

alter table《表名》change《舊欄位名》 《新欄位名》《新資料型別》; 

新增字段:

alter table 《表名》add《新欄位名》《資料型別》[約束條件][first|after 已存在欄位名]; 

刪除字段:

alter table《表名》drop《欄位名》;

修改欄位的排列位置:

alter table《表名》modify 《字段 1>《資料型別》 first|after 《字段 2>; 

更改表的儲存引擎:

alter table《表名》 engine=《更改後的儲存引擎名》 

刪除表的外來鍵約束:

alter table《表名》 drop foreign key《外來鍵約束名》 

刪除沒有被關聯的表:

drop  table [if exists]表1,表2,...表n; 

外來鍵約束是用來保證資料的參照完整性,如果表之間需要關聯外來鍵,卻指定了不同的儲存引擎,這些表之間是不能建立外來鍵約束的。

刪除被其他表關聯的主表:

先刪除外來鍵關聯,再刪除關聯子表。 

mysql 3資料庫 資料表 sql檔案

資料庫 資料表 刪除表字段 alter table 表名 drop 表頭 注 如果資料表中只剩餘乙個欄位則無法使用drop來刪除字段。刪除列 alter table 表名 drop column 表頭 刪除改表頭對應的列 查詢資料 select 表頭 from 資料表 重新命名資料表renameta...

mysql 資料表的基本操作

1.建立表 create database name use database name create tabletable name id int 11 name varchar 25 salary float 2.show tables 顯示當前資料庫的表 3.單字段主鍵,設定主鍵有兩種情況。主...

mysql資料表的基本操作

一 先建立乙個資料庫,然後使用資料庫 資料庫舉例命名為student 1.建立資料庫 create database student 2.使用資料庫 use student 二 建立乙個儲存資訊的資料表 命名為test create table test name varchar 25 age in...