7.21 MySQL學習總結

MySQL常用指令:
1.命令行啟動mysql :

c:/>mysql -h hostname -u root -p
或 
c:/>mysql -u root -p root (密碼)
或
c:/>mysql -uroot -proot (密碼)

(windows平臺 需要將mysql加入Path環境變量中)

啟動.png

(-p 后接密碼后回車 也可以 回車后輸入密碼)
若連接本地數據庫 -h hostname 改為 -h localhost 或者省略-h hostname(即為mysql -u root -p)
若連接遠端服務器的數據庫 -h hostname 改為 -h + 192.168.X.X (遠程服務器的IP地址)

2.查看mysql的幫助:

c:/> mysql --help
mysql 幫助.png

3.查看現在時間:

select current_date;
select now();
mysql now() 函數.png
mysql current_date 命令.png

mysql是一個數據庫軟件 數據庫是表的集合
mysql里面可以有很多數據庫(可以理解為很多表的集合)

4.顯示mysql里面有多少數據庫:

show databases;
show databases.png

5 sql注釋語句:

mysql > -- 注釋內容

注意 -- 和注釋之間有個空格!

sql注釋.png

6 創建數據庫:
create database 數據庫名稱

mysql > create database mybase;
創建數據庫.png

7 刪除數據庫:
drop database 數據庫名稱:

mysql > drop database mybase;
刪除數據庫.png

8 使用指定的數據庫:
use + 指定的數據庫名稱

mysql > use myhive;
使用指定的數據庫.png

9 指定數據庫后顯示數據庫中所有表:

mysql > show tables;
顯示數據庫中所有表.png

Empty set 標識表空

10 在數據庫中創建表:

創建表.png
創建表.png

11 查看數據表:

mysql > show create table test;
mysql > desc test;
mysql > describe test;

(test 為一個表名)

查看數據表方式1.png
查看數據表方式2.png
show table.png

查看表結構:


desc.png

12 刪除表:

mysql > drop table test;
刪除表.png

13 查詢表數據:

mysql > select * from test;

(全字段 全表掃描)

或者:

mysql > select id,name from test;

(部分字段查詢 投影查詢)

查表.png

條件查詢 查id>3的字段:


QQ圖片20170721195558.png

其他查詢注意:


運算符.png
條件查詢.png
in關鍵字.png
between and.png
空值查詢.png
distinct.png
like關鍵字.png
下劃線.png

14 插入記錄:

mysql > insert into test(id,name,age) values(1,'wang',23);
QQ圖片20170721194722.png

或插入部分字段數據:

mysql > insert into test(id,name) values(1,'wang');
insert into.png

若插入全部字段可以簡寫:

mysql > insert into test values(1,'wang',59);
全部字段簡寫插入命令.png

15 更新記錄:

更新1.png
更新2.png
mysql > update test set grade=11 where id = 2;
更新.png

16 刪除記錄:

mysql > delete from test where id=1;
刪除記錄.png

注意,若:

mysql > delete from test;

則會把所有記錄刪除,要謹慎!

小總結:
CRUD:

create:
insert into table_name(field_name,...) values(value,...);

retrieve:
select id ,... from table_name where id=xxx,...;

update:
update table_name set id=xxx,... where id=xxx,...;

delete:
delete from test where ...;

MySQL約束:

1 primary key 主鍵
主鍵特點:不為null 不能重復

mysql > create table test(id int primary key,...);

2 自增

mysql > create table test(id int primary key auto_increment,...);

自增是查詢到最大值后+1

3 不能為空 not null:

mysql > create table test(id int primary key auto_increment, name varchar(20) not null, age int);

4 帶條件創建 刪除:

// 帶條件創建
mysql > create database if not exists itcast;
mysql > create table if not exists test;
// 帶條件刪除
mysql > drop database if exists itcast;
mysql > drop table if exists test; 

設一個字段為空值:

update test set name=null where id=3;
設空值.png

注意:需要在設計表中允許name字段為空 才能在客戶端用指令設置空值

設計表設允許空.png

設置字段為null后 我們來查詢為null的字段:


null.png

可見查詢 null 比較特殊 不能用:

mysql > ... where name=null;

而應該:

mysql > ... where name is null;

來看個特Null情況:


QQ圖片20170722212156.png

來個段子:
比如你問我:“那個人叫什么名字”?
我說:“不知道”。
不知道 可能是那個人叫不知道,也可能是我真不知道。
這就是兩種Null的區別...

QQ圖片20170722212441.png

所以要特別注意Null

拓展:

使用MySQL命令行執行sql腳本:

mysql > source d:/java/xxx.sql;

更多內容下載ppt學習:
http://pan.baidu.com/s/1hs3QDvQ

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容

  • 什么是數據庫? 數據庫是存儲數據的集合的單獨的應用程序。每個數據庫具有一個或多個不同的API,用于創建,訪問,管理...
    chen_000閱讀 4,057評論 0 19
  • MySQL 數據庫常用命令 1、MySQL常用命令 create database name; 創建數據庫 use...
    55lover閱讀 4,830評論 1 57
  • Spring Cloud為開發人員提供了快速構建分布式系統中一些常見模式的工具(例如配置管理,服務發現,斷路器,智...
    卡卡羅2017閱讀 134,973評論 19 139
  • MySQL5.6從零開始學 第一章 初始mysql 1.1數據庫基礎 數據庫是由一批數據構成的有序的集合,這些數據...
    星期四晚八點閱讀 1,184評論 0 4
  • 灸法是中醫學的重要組成部分;距今已有3000多年歷史。隨著艾灸方法的改變,今天的艾灸理念也有很大的突破,我們應該師...
    金葉艾灸閱讀 1,018評論 0 3