核心術語
| 術語 | 英文 | 說明 |
| 數據庫 | Database | 有組織的數據集合 |
| 數據庫管理系統 | DBMS | 管理數據庫的軟件 |
| 列/行 | Column/Row | 表的垂直/水平維度 |
| 主鍵 | Primary Key | 唯一標識行,非空、唯一 |
| SQL | Structured Query Language | 標準化查詢語言,跨 DBMS 通用 |
MySQL 客戶端連接參數
mysql -u username -p -h host -P port
# 示例
mysql -u ben -p -h myserver -P 9999
基礎操作命令速查
庫級操作
SHOW DATABASES; -- 列出所有庫
CREATE DATABASE mydb; -- 創建庫
DROP DATABASE mydb; -- 刪除庫
USE mydb; -- 切換庫
表級操作
CREATE TABLE product (
pro_id INT,
pro_price FLOAT,
pro_name VARCHAR(20)
);
DESCRIBE product; -- 查看表結構
SHOW CREATE TABLE product; -- 查看建表 SQL
DROP TABLE product; -- 刪除表
TRUNCATE TABLE product; -- 清空表(重置自增 ID)
數據操作 (DML)
-- 插入
INSERT INTO product (pro_price, pro_name) VALUES (15.00, 'pen');
INSERT INTO product (pro_price, pro_name) VALUES
(12.00, 'toothpaste'), (18.00, 'belt'), (15.00, 'basin');
-- 查詢
SELECT id, title FROM news LIMIT 3; -- 前 3 行
SELECT id, title FROM news LIMIT 1 OFFSET 3; -- 第 4 行 (5.0+ 語法)
SELECT id, title FROM news LIMIT 3, 1; -- 同義
SELECT DISTINCT title FROM news; -- 去重
SELECT * FROM news ORDER BY id DESC LIMIT 1; -- 最大 ID
-- 更新
UPDATE product SET pro_price = 50.00 WHERE pro_name = 'pot';
-- 刪除
DELETE FROM product WHERE pro_id = 1;
進階查詢技巧
- 完全限定名:
db_name.table_name.column_name
- 排序規則:
ORDER BY col1 DESC, col2 ASC(每列單獨指定)
- 通配符慎用:
SELECT * 降低性能,顯式列出列名
Navicat 圖形化操作對應
- 建表 → 右鍵「設計表」→ 設置字符集、主鍵、自增
- 插入中文 → 表字符集設置為 utf8/gbk
- 視圖數據 → 自動顯示網格、支持編輯
新手避坑指南
- 命令以
; 或 \g 結束
help 或 \h 獲取幫助
quit/exit/\q 退出
- 字符串用單引號
',標識符用反引號 `
- 關鍵字不區分大小寫,建議大寫提高可讀性