MySQL 為關聯式資料庫管理系統 (RDBMS),核心單位為「表」。一張表由 表頭(欄位名)、列(同類型資料集合)、行(單筆記錄)、值(具體資料)、鍵(唯一標識)組成。
C:\Program Files\mysql-5.1.69-win32my-small.ini 為 my.ini,在 [client] 與 [mysqld] 添加 default-character-set=gbkMYSQL_HOME=C:\Program Files\mysql-5.1.69-win32;%MYSQL_HOME%\bin;mysqld --install MySQL --defaults-file="my.ini"net start MySQL # 啟動 net stop MySQL # 停止 sc delete MySQL # 卸載服務
| 類別 | 常用子類型 |
|---|---|
| 數值 | TINYINT, SMALLINT, MEDIUMINT, INT, BIGINT, FLOAT, DOUBLE, DECIMAL |
| 日期時間 | DATE, TIME, DATETIME, TIMESTAMP, YEAR |
| 字串 | CHAR, VARCHAR, TINYTEXT, TEXT, MEDIUMTEXT, LONGTEXT, TINYBLOB, BLOB, MEDIUMBLOB, LONGBLOB |
mysql -h host -u user -p
CREATE DATABASE samp_db CHARACTER SET gbk; USE samp_db;
CREATE TABLE students ( id INT UNSIGNED NOT NULL AUTO_INCREMENT PRIMARY KEY, name CHAR(8) NOT NULL, sex CHAR(4) NOT NULL, age TINYINT UNSIGNED NOT NULL, tel CHAR(13) NULL DEFAULT '-' );
AUTO_INCREMENT 需配合索引(主鍵即可)CHAR(8) 固定長度,DEFAULT '-' 設預設值INSERT INTO students VALUES (NULL, '王剛', '男', 20, '13811371377');
INSERT INTO students (name, sex, age) VALUES ('孫麗華', '女', 21);
SELECT name, age FROM students; SELECT * FROM students WHERE sex='女'; SELECT * FROM students WHERE age > 21; SELECT * FROM students WHERE name LIKE '%王%'; SELECT * FROM students WHERE id < 5 AND age > 20;
UPDATE students SET tel=DEFAULT WHERE id=5; UPDATE students SET age=age+1; UPDATE students SET name='張偉鵬', age=19 WHERE tel='13288097888';
DELETE FROM students WHERE id=2; DELETE FROM students WHERE age < 20; DELETE FROM students; -- 清空表
| 操作 | 語法範例 |
|---|---|
| 新增欄位 | ALTER TABLE students ADD address CHAR(60);ALTER TABLE students ADD birthday DATE AFTER age; |
| 修改欄位 | ALTER TABLE students CHANGE tel telphone CHAR(13) DEFAULT '-';ALTER TABLE students CHANGE name name CHAR(16) NOT NULL; |
| 刪除欄位 | ALTER TABLE students DROP birthday; |
| 重命名表 | ALTER TABLE students RENAME workmates; |
| 刪除表 | DROP TABLE workmates; |
| 刪除庫 | DROP DATABASE samp_db; |
mysqladmin -u root -p password '新密碼'
MySQL Workbench:官方免費 GUI,支援語法高亮、自動補全、ER 圖設計、效能儀表板、備份還原等。
下載:官方下載頁