MySQL是一種開(kāi)源的關(guān)系型數(shù)據(jù)庫(kù)管理系統(tǒng)(RDBMS),廣泛應(yīng)用于Web開(kāi)發(fā)中。其結(jié)構(gòu)化查詢語(yǔ)言(SQL)按功能可分為以下幾類:
1. DDL(數(shù)據(jù)定義語(yǔ)言)
用于定義和管理數(shù)據(jù)庫(kù)對(duì)象(表、索引、視圖等)。
- CREATE:創(chuàng)建數(shù)據(jù)庫(kù)/表
- ALTER:修改表結(jié)構(gòu)
- DROP:刪除數(shù)據(jù)庫(kù)/表 `sql
CREATE TABLE users (
id INT PRIMARY KEY,
name VARCHAR(50)
);`
2. DML(數(shù)據(jù)操作語(yǔ)言)
用于操作表中數(shù)據(jù)。
INSERT:插入數(shù)據(jù)UPDATE:更新數(shù)據(jù)DELETE:刪除數(shù)據(jù)3. DQL(數(shù)據(jù)查詢語(yǔ)言)
核心為SELECT語(yǔ)句,支持:
SELECT * FROM tableWHERE、LIKE、BETWEENORDER BYLIMIT聚合函數(shù)對(duì)數(shù)據(jù)組執(zhí)行計(jì)算:
COUNT():計(jì)數(shù)SUM():求和AVG():平均值MAX()/MIN():最值結(jié)合GROUP BY實(shí)現(xiàn)分組統(tǒng)計(jì): `sql
SELECT department, AVG(salary)
FROM employees
GROUP BY department
HAVING AVG(salary) > 5000;`HAVING用于對(duì)分組結(jié)果進(jìn)行過(guò)濾(與WHERE作用于原始數(shù)據(jù)區(qū)別)。
約束類型:
1. 主鍵約束(PRIMARY KEY):唯一標(biāo)識(shí)
2. 外鍵約束(FOREIGN KEY):維護(hù)表間引用完整性
3. 唯一約束(UNIQUE):確保列值不重復(fù)
4. 非空約束(NOT NULL)
5. 檢查約束(CHECK):值域驗(yàn)證(MySQL 8.0+支持)
表關(guān)系設(shè)計(jì):
- 一對(duì)一:外鍵+唯一約束
- 一對(duì)多:在“多”方表設(shè)置外鍵
- 多對(duì)多:通過(guò)中間表實(shí)現(xiàn)
mysql-connector-java.jarlocalhost(本地)或服務(wù)器IP3306(默認(rèn))連接名(Connection Name)可以使用關(guān)鍵詞,但不建議。
- IDEA的連接名僅為本地標(biāo)識(shí),不參與SQL解析
- 但使用SELECT、DROP等SQL關(guān)鍵詞可能造成混淆
- 推薦使用業(yè)務(wù)語(yǔ)義名稱:company<em>db、user</em>center等
spring.datasource.hikari.maximum-pool-size=20
spring.datasource.hikari.connection-timeout=30000
SELECT *,使用分頁(yè)wait_timeout參數(shù)utf8mb4---
****:掌握SQL語(yǔ)法分類是數(shù)據(jù)庫(kù)操作基礎(chǔ),合理設(shè)計(jì)約束與表關(guān)系保證數(shù)據(jù)完整性。IDEA連接數(shù)據(jù)庫(kù)時(shí),連接名應(yīng)遵循“見(jiàn)名知意”原則,避免使用SQL關(guān)鍵詞減少歧義。在實(shí)際網(wǎng)絡(luò)技術(shù)開(kāi)發(fā)中,需結(jié)合連接池、索引優(yōu)化等技術(shù)提升系統(tǒng)性能。
如若轉(zhuǎn)載,請(qǐng)注明出處:http://www.txlongtai.cn/product/40.html
更新時(shí)間:2026-06-03 16:40:01