建立資料庫表、資料表的型別
阿新 • • 發佈:2022-12-09
建立資料庫表、資料表的型別
建立資料庫表
-- 目標:建立一個school資料庫 -- 建立學生表(列,欄位) 使用SQL建立 -- 學號int,登陸密碼varchar(20),姓名,性別varchar(2),出生日期(datatime),家庭地址,email -- 注意點:使用英文的() , 表的名稱 和 欄位 儘量使用 ``括起來 -- AUTO INCREMENT 自增 -- 字串使用 單引號括起來! -- 所有的語句後面加 ,(英文的) ,最後一個不用加 -- PRIMARY KEY 主鍵,一般一個表只有一個唯一的主鍵! CREATE TABLE IF NOT EXISTS `student` ( `id` INT(4) NOT NULL AUTO_INCREMENT COMMENT '學號', `name` VARCHAR(30) NOT NULL DEFAULT '匿名' COMMENT '姓名', `pwd` VARCHAR(30) NOT NULL DEFAULT '123456' COMMENT '密碼', `sex` VARCHAR(2) NOT NULL DEFAULT '女' COMMENT '性別', `birthday` DATETIME DEFAULT NULL COMMENT '出生日期', `address` VARCHAR(100) DEFAULT NULL COMMENT '家庭住址', `email` VARCHAR(50) DEFAULT NULL COMMENT '郵箱', PRIMARY KEY(`id`) )ENGINE=INNODB DEFAULT CHARSET=utf8
格式
CREATE TABLE [IF NOT EXISTS] `表名`(
`欄位名` 列型別 [屬性] [索引] [註釋],
`欄位名` 列型別 [屬性] [索引] [註釋],
......
`欄位名` 列型別 [屬性] [索引] [註釋]
)[表型別][字符集設定][註釋]
常用命令
SHOW CREATE DATABASE school; -- 檢視建立資料庫的語句
SHOW CREATE TABLE student; -- 檢視student資料表的定義語句
DESC student; -- 顯示錶的結構
資料表的型別——MYISAM和INNODB的區別
-- 關於資料庫引擎
/*
INNODB 預設使用
MYISAM 早些年使用的
*/
常規使用操作
- MYISAM 節約空間,速度較快
- INNODB 安全性高,事務的處理,多表多使用者操作
在物理空間儲存的位置
所有的資料庫檔案都存在data目錄下,一個資料夾就對應一個數據庫
本質 檔案的儲存
MySQL引擎在物理檔案上的區別
- INNODB在資料庫表只有一個*.frm檔案,以及上級目錄下的ibdata1檔案
- MYISAM對應檔案
- *.frm 表結構的定義檔案
- *.MYD 資料檔案(data)
- *.MYI 索引檔案(index)
設定資料庫表的字元編碼
CHARSET=utf8
不設定,MySQL預設的字元編碼:Latin1 ,不支援中文
在my.ini中配置預設的編碼
character-set-server=utf8