mysql前期學習整理
1.mysql的優缺點
優點:有良好的事務管理能力,崩潰修復能力,
缺點:讀寫速率相對較差,占用資料空間較大,
2.連接服務器
1.桌面win+r
2.輸入mysql -u root -p
3.輸入密碼
3.sql陳述句分類
DDL
Data Defintion(定義)Language
資料庫,表創建,修改,洗掉
DML:
Data Manipulation(操作)Language
表中資料的操作,插入,洗掉,修改,查詢
DCL:
Data Control(控制)Language
權限控制,誰能干什么,誰不能干什么
DQL:
Data Query(查詢)Language
查詢資料庫中的資料
DDL(資料庫和表的操作)
關鍵字:
create:創建
drop:洗掉
show:查看
alter:修改
database:資料庫
table:表
use:選擇/切換 資料庫
欄位型別:
整數:int long short
浮點:float double(5,2)5總長度5位 2小點位數
字符:char(定長)varchar(變長)
文本:text(大段的文字)
查看所有資料庫
show databases;
查看所有表
show tables;
查看表結構
desc 表名
添加欄位
alert table 表名 add 新欄位名 欄位型別 (約束條件);
欄位重命名
alert table 表名 change 原欄位名 新欄位名 欄位型別;
修改欄位型別
alert table 表名 modify 欄位名 新欄位型別;
洗掉欄位
alert table 表名 drop 欄位名;
修改表名
rename table 原表名 rename to 新表名;
五大約束
1.主鍵約束:唯一,不重復,非空
添加方式一:建表時創建主鍵約束,
create table 表名(
列名1 資料型別 primary key,
列名2 資料型別
);
添加方式二:已存在表,添加主鍵約束,
alter table 表名 add constraint 主鍵約束名字 add primary key(列名);
洗掉主鍵約束
alter table 表名 drop primary key;
聯合主鍵一:創表時添加聯合主鍵
create table 表名(
列名1 資料型別 ,
列名2 資料型別 ,
primary key(列名1,列名2)
);
聯合主鍵二:已存在表,添加聯合主鍵
alter table 表名 add constraint 主鍵約束名字 primary key(列名1,列名2);
唯一約束:unique 唯一約束名字
添加方式一:建表時創建唯一約束,
create table 表名(
列名1 資料型別 unique ,
列名2 資料型別
);
添加方式二:已存在表,添加唯一約束,
alter table 表名 add unique(列名);
洗掉唯一約束
alter table 表名 drop index 唯一約束的名字;
默認約束 default :不寫資料時,也會默認給一個值,
添加方式一:建表時創建默認約束,
create table 表名(
列名1 資料型別 default ‘字串或者日期型別’ ,
列名2 資料型別 default 數值型別,
列名3 資料型別
);
添加方式二:已存在表,添加默認約束,
alter table 表名 modify 列名 資料型別 default ‘值’ ;
洗掉默認約束
alter table 表名 modify 列名 資料型別;
非空約束 not null :必須有值
添加方式一:建表時創建非空約束,
create table 表名(
列名1 資料型別 not null,
列名2 資料型別
);
添加方式二:已存在表,添加非空約束,
alter table 表名 modify 列名 資料型別 not null;
洗掉非空約束
alter table 表名 modify 列名 資料型別;
外鍵約束 foreign key 外鍵名字 針對從表而言
添加方式一:建表時創建外鍵約束,
先建主表
create table 主表名(
列名1 資料型別 ,
列名2 資料型別
);
再建從表 --外鍵在這個表建立
create table 從表名(
列名1 資料型別 ,
列名2 資料型別 ,
constraint 外鍵名 foreign key(從表列名) references 主表名(主表列名);
);
先建主表
create table 主表名(
列名1 資料型別 ,
列名2 資料型別
);
再建從表 --外鍵在這個表建立
create table 從表名(
列名1 資料型別 ,
列名2 資料型別 ,
constraint 外鍵名 foreign key(從表列名) references 主表名(主表列名);
);
添加方式二:已存在表,添加外鍵約束,
alter table 從表名 add constraint 外鍵名 foreign key(從表列名) references 主表表名(主表列名);
洗掉外鍵約束
alter table 從表名 drop foreign key 外鍵名;
DML操作(表中資料的操作:增刪改查)
插入資料:insertinto
修改資料:upadata
洗掉資料:delet
查詢資料:select
插入資料:insert into
語法:
寫法一:insert into 標名(欄位名1,欄位名2,,,,,) value(資料(數量與前一個括號一致,注意順序));
寫法二:insert into 表名set 欄位名=欄位值,欄位名=欄位值….
注意事項:
1.欄位名與表中的欄位名一模一樣
2.資料按照欄位型別一致
3.如果插入空槽null,數字型別和而型別直接寫,其他的用單引號擴上
修改資料:updata
語法:
updata 表名 set 要更改的欄位=更改的值 where 條件
注意事項:
一般是整張表格欄位全部修改
加上條件修改一條
洗掉資料:DELETE
語法:
delete from 表名 where 條件
不加where 條件,直接洗掉整張表
DQL(重點,查詢)
資料庫在執行dql的時候,不會對資料進行任何的改變,僅僅是看看,看查詢的結果也是一張表
查詢表中所有列的資料
select * from 表名;
查詢所有,select * from 表名;
查詢指定列的資料
select 列名1,列名2,……from 表名;
寫那幾列查哪幾列
條件查詢
where查詢條件
關系運算子:> < = != >= <=
區間:between A and B(A和B之間)
and &&:和 并且
or ||:或
not : 非,取反
在當前資料庫查看其它資料庫中的表:
show tables in 資料庫名;
查看非當前資料庫下表的資料:
select 列名(*) from 資料庫.資料表名;
轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/272945.html
標籤:其他
上一篇:mysql資料庫基本語法