共計 2621 個字符,預(yù)計需要花費 7 分鐘才能閱讀完成。
自動寫代碼機器人,免費開通
丸趣 TV 小編給大家分享一下 MySQL 中的基礎(chǔ)知識有哪些,希望大家閱讀完這篇文章之后都有所收獲,下面讓我們一起去探討吧!
MySQL 基礎(chǔ)
啟動 MySQL net start mysql
關(guān)閉 MySQL net stop mysql
登錄 mysql -uroot -p
退出 mysql exit;
mysql quit;
mysql
顯示當前服務(wù)器版本 SELECT VERSION();
顯示當前時間 SELECT NOW();
顯示當前用戶 SELECT USER();
MySQL 默認的端口號是:3306
MySQL 超級用戶是:root
創(chuàng)建數(shù)據(jù)庫:CREATE DATABASE
修改數(shù)據(jù)庫:ALTER DATABASE
刪除數(shù)據(jù)庫:DROP DATABASE
數(shù)據(jù)類型
整型:TINYINT SMALLINT MEDIUMINT INT BIGINT
浮點型:FLOAT[(M,D)] DOUBLE[(M,D)] M 為數(shù)字總位數(shù),D 為小數(shù)點后面的位數(shù)
字符型:VERCHAR(M)
數(shù)據(jù)表
查看有什么數(shù)據(jù)庫:SHOW DATABASES;
打開數(shù)據(jù)庫:USE 數(shù)據(jù)庫名稱
查看當前數(shù)據(jù)庫:SELECT DATABASES;
創(chuàng)建數(shù)據(jù)表:CREATE TABLE[IF NOT EXISTS]table_name(
ageTINYINT UNSGINED(無符號位),
……
)
查看數(shù)據(jù)表列表:SHOW TABLES[FORM db_name]; 使用 form 可以查看別的數(shù)據(jù)庫中的表
查看數(shù)據(jù)表結(jié)構(gòu):SHOW COLUMNS FORM tbl_name;
插入記錄;INSERT [INTO] tbl_name[(coi_name,…)] VALUES(VAL,…);
查找記錄:SELECT expr,…FORM tbl_name(WHERE …..);
空值與非空
CREATE TABLE[IF NOT EXISTS]table_name(
age1 TINYINT UNSGINED(無符號位) NOT NULL,
age2 TINYINT UNSGINED(無符號位) NULL,// 默認是可以為空
……
)
自動編號 AUTO_INCREMENT
1 自動編號,且必須與主鍵組合使用
2 默認情況下,起始值為 1,增量為 1
主鍵 PRIMARY KEY
1 每張表只能有一個主鍵
主鍵保證記錄的唯一性
主鍵自動為 NOT NULL
CREATE TABLE[IF NOT EXISTS]table_name(
age1 TINYINT UNSGINED(無符號位) PRIMARY KEY,
……
)
唯一約束 UNIQUE KEY
默認約束:DEFAULT
更新記錄 UPDATE
語法:UPDATE tb_name SET age=age+10 WHERE name= chaihuo;
刪除記錄 FELETE
語法:DELETE FORM tb_name WHERE name= chaihuo;
查詢結(jié)果分組 GROUP BY
語法:SELECT sex FORM users BY sex;
HCAING 分組條件
語法:SELECT sex,age FORM users BY sex HAVING age
主要:此時 HAVING 后面只有兩種情況 1)聚合函數(shù) 2)在 select 后面
對查詢結(jié)果進行排序 ORDER BY
語法:SELECT * FORM users ORDER BY id DESC;
運算符和函數(shù)
字符運算符
CONCAT() 字符連接
CONCAT_WS() 使用指定的分隔符進行字符連接
FORMAT() 數(shù)字格式化
LOWER()UPPER()轉(zhuǎn)換成小 / 大寫字母
LEFT() RIGHT() 獲取左 / 右側(cè)字符
LENGTH()獲取字符串長度
SUBSTRING()字符串截取
[NOT] LIKE 模式匹配
REPLACE() 字符串替換
數(shù)值運算符與函數(shù)
CEIL() 進一取整
DIV 整數(shù)除法
FLOOR() 舍一取整
MOD 取余數(shù)
POWER() 冪運算
ROUND() 四舍五入
比較運算符與函數(shù)
[NOT] BETWEEN…AND… [NOT]IN() IS[NOT]NULL
信息函數(shù)
CONNECTION_ID() 連接 id
DATEBASE() 當前數(shù)據(jù)庫
LAST_INSERT_ID() 最后插入記錄的 Id 號
USER()當前用戶
VERSON() 版本信息
聚合函數(shù)
AVG() 平均值
COUNT() 計數(shù)
MAX() MIN() SUM()
加密函數(shù)
MD5() 信息摘要算法
PASSWORD() 密碼算法
子查詢和連接
將查詢結(jié)果寫入數(shù)據(jù)表
INSERT[INTO] tbl_name[(col_name,…)] SELECT…
例子:INSERT tdb_goods(cate_name) SELECT good_cake FORM table GROUP BY good_cake;
多表更新
UPDATE table1 INNER JOIN table2 ON table1_name=table2_name SET table1_id=table2_di;
CREATE…SELECT
創(chuàng)建數(shù)據(jù)表同時將查詢結(jié)果寫入到數(shù)據(jù)表
CREATE TABLE table_name [(create_definine)] select_statement
例:CREATE TABLE table1(
id SMALLINT UNSIGNED PRIMARY KEY AUTO_INCREMENT,
name VARCHAR(20) NOT NULL)
SELECT SELECT good_cake FORM table GROUP BY good_cake;
)
存儲引擎
通過修改 MySQL 配置文件實現(xiàn)
1)-ddfault-storage-engine=engine
2) 通過創(chuàng)建數(shù)據(jù)表命令實現(xiàn)
CREATE TABLE[IF NOT EXISTS]table_name(
age1 TINYINT UNSGINED(無符號位) NOT NULL,
age2 TINYINT UNSGINED(無符號位) NULL,// 默認是可以為空
……
)ENGINE=engine;
通過修改數(shù)據(jù)表命令實現(xiàn)
-ALTER TABLE table_name ENGINE[=]engine_name;
存儲引擎
MyISAM: 存儲現(xiàn)在可達 256TB,支持索引。表級鎖定,數(shù)據(jù)壓縮
InnoDB: 存儲限制為 64TB, 支持事務(wù)和索引。鎖顆粒為行鎖
看完了這篇文章,相信你對“MySQL 中的基礎(chǔ)知識有哪些”有了一定的了解,如果想了解更多相關(guān)知識,歡迎關(guān)注丸趣 TV 行業(yè)資訊頻道,感謝各位的閱讀!
向 AI 問一下細節(jié)