MySQL知識點2 表的操作

2021-08-14 04:18:39 字數 2130 閱讀 7205

1.表的定義:表是乙個很重要的資料庫物件,包含資料庫中所有的資料,是組成資料庫的基本元素,由若干個字段組成。主要實現儲存資料記錄。表的操作包含建立表、檢視表、刪除和修改表。

2.表的基本操作

建立表:create table table_name(屬性名 資料型別,屬性名 資料型別 .... 屬性名 資料型別);

檢視表:describe table_name;  檢視表的詳細定義:show create table table_name;

刪除表:drop table table_name;

修改表:(1)修改表名:alter table old_table_name new_table_name;

(2)增加字段

在表的最後乙個位置增加字段: alter table tabble_name add 屬性名 資料型別;

在表的第乙個位置增加字段: alter table table_name add 屬性名 資料型別 first;

在表的指定字段之後增加字段: alter table table_name  add 屬性名 資料型別 after 屬性名;

(3)刪除字段:alter table table_name drop 屬性名;

(4)修改字段

修改欄位的資料型別: alter table table_name modify 屬性名 資料型別; 

修改欄位的名字:alter table table_name change 舊屬性名 新屬性名 舊資料型別;

同時修改欄位的名字和屬性:alter table table_nane change 舊屬性名 新屬性名 新資料型別;

修改欄位的順序:alter table table_name modify 屬性名1 資料型別  first/after 屬性名2;

3.操作表的約束

(1)完整性約束:指資料的準確性和一致性。根據約束限制可分為單列約束(每個約束只約束一列資料)和多列約束(每個約束可約束多列資料)。

完整性約束關鍵字

含義not null

約束字段不能為空

default

設定欄位的預設值

unique key(uk)

約束欄位的值唯一

primary key(pk)

約束欄位為表的主鍵,可以作為該錶記錄的唯一標識

auto_increment

約束欄位的值自動增加

foreign key(fk)

約束欄位為表的外來鍵

設定非空約束(not null,nk):create table table_name(屬性名 資料型別 not null ,....);

設定欄位為預設值:create table table_name(屬性名 資料型別 default 預設值, ....);

設定唯一約束:create table table_name(屬性名 資料型別 unique,....);

設定主鍵約束(設定主鍵是為了快速查詢表中的資料記錄,必須滿足主鍵的值是唯一非空的),可分為單字段主鍵和多字段主鍵

單字段主鍵:create table table_name(屬性名 資料型別  primary key,....);如果想給字段上的pk約束設定一             個名字,則constraint 設定名稱 primary key(字段);

多欄位主鍵:create table table_name(屬性名 資料型別 ,.... 【constraint 約束名】primary(屬性名,屬性                 名...));

設定字段值自動增加(當設定該約束時,乙個表中只能有乙個字段,而該字段的資料型別必須為整型):create table table_name(屬性名 資料型別 auto_increment, ....);

設定外來鍵約束(外來鍵約束則保證多個表之間的參照完整性,即構建於兩個字段之間的參照關係;設定外來鍵約束的兩個表之間具有父子關係,子表中的某個欄位的取值範圍由父表決定);設定外來鍵的約束時,設定fk約束的字段必須依賴於資料庫中已存在的父表的主鍵,同時外來鍵也可以為null。

create table table_name(屬性名 資料型別 , 屬性名 資料型別,constraint 外來鍵約束名 foreign key(屬性名1) references 表名(屬性名2)...); 其中屬性名1位子表中設定外來鍵的字段,屬性名2為父表中設定主鍵約束的字段。

mysql 操作知識點

update tpshop seller goods set sall numbe sall numbe 1 where goods id 162 返回值一直是0 原因是資料表中sall numbe,沒有預設值0,新增第乙個資料時是空,空加1為空。distinct select distinct a...

mysql常用知識點 mysql 常用知識點。

mysql u root p show databases show tables select from abc order by id limit 0,10 create database bbb exit mysqldump u root p game home backup.sql mysq...

MySQL知識點3 索引的操作

1.索引的概念 索引是一種有效組合資料的方式,通過索引可以快速的查詢到資料庫物件表中的特定記錄。乙個索引會包含表中按照一定順序排序的一列或多列字段。由表中的乙個欄位或多個字段生成的鍵組成,這些鍵儲存在資料結構中 b 樹或雜湊表 可將索引分為b型樹索引和雜湊索引。mysql支援6種索引 普通索引 唯一...