搭建MySQL及SQL語句小總結
最近和朋友一起學習搭建mysql,同時熟悉sql語句,所以記錄一下過程
前期準備
1.去官網下載最新版的MySQL
2.配置MySQL環境變數,具體操作可以參考以下連結:配置MySQL環境變數
3.安裝指令
mysqld--initialize--console 初始化資料庫(注意儲存初始密碼!)
mysqld--install MySQL 註冊命令
net start mysql 啟動命令
net stop mysql 關閉伺服器
mysql -u root -p 登入自己機器的MySQL資料庫
使用指令登入之後需要修改密碼,以方便下次登入
改密碼指令:
select1;
alter user user() identified by'新的密碼'
select1;
4.exit; 退出MySQL伺服器
5.mysqld –remove 刪除mysql服務
6.檢視使用埠號: show global variables like 'port';(僅在mysql內部使用)
7.重置密碼:參考文章https://blog.csdn.net/gupao123456/article/details/80766154
SQL語句的使用
SQL:Structured Query Language,結構化查詢語言。SQL是一門非過程性語言,即寫一條語句就會執行一個結果。
SQL語言分類:
DDL(資料定義語言):建立資料庫,建立表(create)
DML(資料操作語言):插入資料(insert)修改資料(update)刪除資料(delete)
DCL(資料控制語言):if else
DQL(資料查詢語言):查詢資料select
資料庫
1.建立資料庫
create database 資料庫名 (character set 編碼 collate 校對規則) //括號內的內容一般為預設,可省略。
2.查詢資料庫
select database();(查詢當前使用的資料庫)
show table ; (查詢當前資料庫所包含的表)
show databases;(查詢所有資料庫)
show create database 資料庫名;(查詢資料庫的定義)
3.修改資料庫
alter database 資料庫名 character set 編碼 collate 校對規則;
4.選擇/切換資料庫 use 資料庫名;
表
1.建立表
create table 表名(
欄位1 型別(長度) 約束, 欄位2 型別(長度) 約束,
欄位3 型別(長度) 約束, 欄位4 型別(長度) 約束 );
2.約束
主鍵約束:標識標記該條記錄(通過pramary key宣告主鍵,預設唯一,非空)(auto_increment 資料庫維護主鍵自動增長)
唯一約束:值是唯一的,使用unique宣告
非空約束:值不能為空 not null
3.刪除表
drop table 表名
4.查詢表
desc 表名; (查詢表結構)
show create table 表名; 查詢建表語句,儲存引擎和字符集
5.修改表
alter table 表名 add 欄位 型別(長度) 約束; -- 新增欄位 alter table 表名 drop 欄位; -- 刪除欄位 alter table 表名 modify 欄位 型別(長度) 約束; -- 修改型別或者約束 alter table 表名 change 舊欄位 新欄位 型別(長度) 約束 -- 修改欄位的名稱 rename table 表名 to 新表名; -- 修改表名 alter table 表名 character set utf8; -- 修改字符集
資料
新增資料:
insert into 表名 (欄位1,欄位2...) values(值1,值2,值3...); (如果所有欄位都插入資料,欄位部分可以省略)
修改資料:
update 表名 set 欄位=值,欄位2=值...[where] (如果沒有where條件,則預設更新所有記錄)
刪除資料:
delete from 表名 [where]; (刪除資料,一條一條刪除的)
truncate 表名;(刪除所有資料,是先刪除整個表。再建立一個新的空的表(效率),不支援事務)
查詢資料:
select (*)(distinct)欄位1,欄位2
from 表名
where (條件)
group by 欄位 having
order by 欄位名 (asc/desc,升序/降序,預設升序)
常用的where條件
a.> < <= >= = <>(不等於)
b.in (範圍內取內容)
c.and(並且)
d.or (或者)
e.not (不成立)
f.is null (判斷是否為空)
g.like (模糊查詢--可以使用“_”和%表示佔位,_表示佔位一個,%表示佔多位)
聚集函式:
1.count (獲取數量)
2.sum (求和)
3.avg (平均數)
4.max (最大值)
5.min (最小值)
6.group by (分組) 條件過濾應使用的是having 不能是where。