記錄 MySQL 5.0 學習重點,涵蓋連線、用戶授權、資料庫操作、字符集設定與常用 SQL 語法,適合初学者快速上手。
mysql -h localhost -u root
CREATE DATABASE firstdb;
GRANT ALL ON firstdb.* TO 'firstdb'@'localhost' IDENTIFIED BY 'firstdb';
注意:MySQL 預設僅允許 localhost 連線。需遠端連線須額外授權:
GRANT ALL ON *.* TO 'root'@'202.116.39.2' IDENTIFIED BY '123456';
GRANT 語法:GRANT 權限 ON 資料庫.表 TO '用戶'@'主機' IDENTIFIED BY '密碼'
USE firstdb;
SELECT * FROM users;
所有命令以分號結尾。
CREATE TABLE firstdb.users (
id INT,
username VARCHAR(40)
);
| 指令 | 說明 |
|---|---|
SHOW TABLES; | 顯示資料庫中所有表 |
DESCRIBE 表名; | 顯示表結構 |
INSERT INTO users(username) VALUES('eking'); | 新增資料 |
SELECT * FROM users LIMIT 2; | 前 2 筆(類似 SQL Server TOP) |
SELECT * FROM users ORDER BY id LIMIT 1,1; | 第 2 筆(OFFSET, LIMIT) |
分頁:每頁 10 筆 → 第 1 頁 LIMIT 0,10,第 2 頁 LIMIT 10,10 |
MySQL 字符集控制分層:
latin1my.ini 指定character_set_server 系統變數character_set_serverUSE db 時 character_set_database = 該庫預設character_set_database實戰教訓:僅修改資料庫層級字符集不影響既有表,需在 CREATE TABLE 明確指定:
CREATE TABLE `firstdb`.`users` (
`id` INT(11) NOT NULL AUTO_INCREMENT,
`username` VARCHAR(40) DEFAULT NULL,
`birthday` DATE DEFAULT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=gb2312;
Query Browser 中文輸入支援不佳,建議外部編輯器撰寫 SQL 再貼上執行。
DROP DATABASE firstdb;
掌握字符集分層機制是避免中文亂碼的關鍵,建立新專案時務必在庫、表、欄位三層明確規劃編碼策略。