建立資料表
use mahaljsp; create table if not exists employee( id int(11) not null primary key auto_increment, name varchar(20), email varchar(30) not null, address varchar(50), unique key(email), key (name, address) ) engine=InnoDB charset = utf8mb4 collate = utf8mb4_general_ci; show keys in employee;
預設引擎
my.ini 預設引擎
default-storage-engine=MYISAM
表格引擎種類
MyISAM : 一個資料表會出現 *.frm, MYD, MYI三個檔. frm存放欄位及表格設定資訊, MYD為實際資料, MYI為索引資料
支援全文檢索, 不支援Transaction
InnoDB : 分為二個檔 *.frm及 *‧ibd
支援Transaction, 不支援全文檢索
Member : 存於記憶体之中的表格
刪除資料表
drop table if exists employee
欄位資料型態
tinyint 1byte, 長度 4
smallint 2byte, 長度 6
mediumint 3byte, 長度 9
int 4byte, 長度 11
bigint 8byte, 長度 20
float 4byte
double 8byte
decimal : 依指定位數決定空間
bit : 0 及 1
char(10) : 不可變動長度
varchar(10) : 可變動長度
tinyText : 最大255 個字
textText : 最大65535 個字
mediumText : 最大1677萬個字
longText : 最大42億個字
tinyBlob : 二進位制, 最大255byte
blob : 65535 byte
mediumBlob : 1677萬byte
longBlob : 42億 byte
date : 9999-12-31
time : 12:00:00
datetime : 9999-12-31 23:59:59
索引
索引分為主索引, 唯一索引, 一般索引. 主索引, 唯一索引可以宣告於每個欄位之後, 但一般索引只能宣告於所有欄位之後