簡介
Linux 安裝配置 MySQL
# 安裝 MySQL 服務端、核心程序
sudo apt-get install mysql-server
# 安裝 MySQL 客戶端
sudo apt-get install mysql-client
打開MySQL
# 啓動 MySQL 服務
sudo service mysql start
# 使用 root 用戶登錄,實驗樓環境的密碼爲空,直接回車就可以登錄
mysql -u root
查看數據庫
show databases;
連接數據庫
use <數據庫名>
查看錶
show tables;
退出
quit
exit
創建數據庫&插入數據庫
新建數據庫
語句格式爲 CREATE DATABASE <數據庫名字>;
CREATE DATABASE mysql_name;
查看數據庫
show mysql_name;
連接數據庫
use mysql_name;
新建數據表
語句格式
CREATE TABLE 表的名字
(
列名a 數據類型(數據長度),
列名b 數據類型(數據長度),
列名c 數據類型(數據長度)
);
CREATE TABLE students
(
id INT(10),
name CHAR(20),
phone INT(20)
);
MySQL 常用數據類型
數據類型 | 大小(字節) | 用途 | 格式 |
---|---|---|---|
INT | 4 | 整型 | |
FLOAT | 4 | 單精度浮點數 | |
DOUBLE | 8 | 雙精度浮點數 | |
ENUM | – | 單選,比如性別 | ENUM(‘a’,‘b’,‘c’) |
SET | – | 多選 | SET(‘1’,‘2’,‘3’) |
DATE | 3 | 日期 | YYYY-MM-DD |
TIME | 3 | 時間點或持續時間 | HH:MM:SS |
YEAR | 1 | 年份值 | YYYY |
CHAR | 0~255 | 定長字符串 | |
VARCHAR | 0~255 | 變長字符串 | |
TEXT | 0~65535 | 長文本數據 |
整數除了 INT 外,還有 TINYINT、SMALLINT、MEDIUMINT、BIGINT。
CHAR 和 VARCHAR 的區別:
- AR 的長度是固定的,而 VARCHAR 的長度是可以變化的,
- 比如,存儲字符串 “abc",對於 CHAR(10),表示存儲的字符將佔 10 個字節(包括 7 個空字符),
- 而同樣的 VARCHAR(12) 則只佔用4個字節的長度,增加一個額外字節來存儲字符串本身的長度,
- 12 只是最大值,當你存儲的字符小於 12 時,按實際長度存儲。
ENUM和SET的區別:
- ENUM 類型的數據的值,必須是定義時枚舉的值的其中之一,即單選,而 SET 類型的值則可以多選。
插入數據
語句格式
INSERT INTO 表的名字(列名a,列名b,列名c) VALUES(值1,值2,值3);
INSERT INTO students(id,name,phone) VALUES(01,'Tom',110110110);
INSERT INTO students VALUES(02,'Jack',119119119);
INSERT INTO students(id,name) VALUES(03,'Rose');
SQL常見約束
關鍵字 | 名稱 | 功能 |
---|---|---|
NOT NULL | 非空約束 | 指定某列不爲空 |
DEFAULT | 默認約束 | 插入數據爲空時,將使用默認值 |
UNIQUE | 唯一約束 | 指定某列和幾列組合的數據不能重複 |
PRIMARY KEY | 主鍵約束 | 指定某列的數據不能重複、唯一 |
FOREIGN KEY | 外鍵約束 | 指定該列記錄屬於主表中的一條記錄,參照另一條數據 |
CHECK | 檢查 | 指定一個表達式,用於檢驗指定數據 |