1.約束:作用:為了保證資料的有效性和完整性
mysql中常用的約束:主鍵約束(primary key) 唯一約束(unique) 非空約束(not null) 外來鍵約束(foreign key)
1)主鍵約束:被修飾過的字段唯一非空
注意:一張表只能有乙個主鍵,這個主鍵可以包含多個字段
方式1:建表的同時新增約束 格式: 欄位名稱 字段型別 primary key
方式2:建表的同時在約束區域新增約束
所有的字段宣告完成之後,就是約束區域了
格式: primary key(欄位1,欄位2)
create table pk01(
id int,
username varchar(20),
primary key (id)
方式3:建表之後,通過修改表結構新增約束
create table pk02(
id int,
username varchar(20)
);2)唯一約束:(了解)被修飾過的字段唯一,對null不起作用
方式1:建表的同時新增約束 格式: 欄位名稱 字段型別 unique
create table un(
id int unique,
username varchar(20) unique
);方式2:建表的同時在約束區域新增約束
所有的字段宣告完成之後,就是約束區域了
unique(欄位1,字段值2...)
方式3:建表之後,通過修改表結構新增約束
alter table 表名 add unique(欄位1,欄位2);-- 新增的聯合唯一
alter table 表名 add unique(欄位1);-- 給乙個新增唯一
alter table 表名 add unique(欄位2);-- 給另乙個新增唯一
3)非空約束(了解)
特點:被修飾過的字段非空
方式:create table nn(
id int not null,
username varchar(20) not null
);truncate 清空表 ★
格式:truncate 表名; 乾掉表,重新建立一張空表和delete from 區別:
*****delete屬於dml語句 truncate屬於ddl語句
delete逐條刪除 truncate乾掉表,重新建立一張空表
auto_increment 自增
要求:1.被修飾的字段型別支援自增. 一般int
2.被修飾的字段必須是乙個key 一般是primary key
4)笛卡爾積:了解
多張表無條件的聯合查詢.沒有任何意思
select a.*,b.* from a,b;
5)內連線:★
格式1:顯式的內連線
select a.*,b.* from a [inner] join b on ab的連線條件
格式2:隱式的內連線
select a.*,b.* from a,b where ab的連線條件
6)外連線:★
左外連線:★
select a.*,b.* from a left [outer] join b on 連線條件; outer 可以不寫
意思:先展示join左邊的(a)表的所有資料,根據條件關聯查詢 join右邊的表(b),符合條件則展示出來,不符合以null值展示.
右外連線:
select a.*,b.* from b right [outer] join a on 連線條件; outer 可以不寫
意思:先展示jion右邊的表(a)表的所有資料,根據條件關聯查詢join左邊的表(b),符合條件則展示出來,不符合以null值展示.
7)子查詢:★
乙個查詢依賴另乙個查詢.
MySQL資料庫總結(1)入門語句
把以前總結在有道雲筆記的知識移到部落格上,順便複習一下 伺服器位址 可用ip,網域名稱 埠 3306 使用者名稱 密碼 mysql h localhost uusername ppasswd mysql h localhost u root p 回車 輸入密碼 h 如果不寫,則預設連localhos...
總結(1) 資料庫
一 mysql 資料庫儲存的原理 儲存過程中是乙個可程式設計的函式,它在資料庫中建立並儲存。它可以有sql語句和一些特殊的控制結構組成。當希望在不同的應用程式或平台上執行相同的函式,或者封裝特定功能時,儲存過程是非常有用的。資料庫中的儲存過程可以看做是對程式設計中物件導向方法的模擬。它允許控制資料的...
建立mysql資料庫總結 MySQL資料庫總結
引擎 檢視mysql預設引擎 show variables like storage engine 檢視表引擎 show table status from 資料庫名 修改表引擎 alter table 表名 engine innodb 建立時直接定義引擎 create table 表名 engin...