您好,登錄后才能下訂單哦!
目錄
規(guī)范背景與目的
2.1 數(shù)據(jù)庫設(shè)計
2.1.1 庫名
2.1.2 表結(jié)構(gòu)
2.1.3 列數(shù)據(jù)類型優(yōu)化
2.1.4 索引設(shè)計
2.1.5 分庫分表、分區(qū)表
2.1.6 字符集
2.1.7 程序DAO層設(shè)計建議
2.1.8 一個規(guī)范的建表語句示例
2.2 SQL編寫
2.2.1 DML語句
2.2.2 多表連接
2.2.3 事務(wù)
2.2.4 排序和分組
2.2.5 線上禁止使用的SQL語句
1. 規(guī)范背景與目的
MySQL數(shù)據(jù)庫與 Oracle、 SQL Server 等數(shù)據(jù)庫相比,有其內(nèi)核上的優(yōu)勢與劣勢。我們在使用MySQL數(shù)據(jù)庫的時候需要遵循一定規(guī)范,揚(yáng)長避短。本規(guī)范旨在幫助或指導(dǎo)RD、QA、OP等技術(shù)人員做出適合線上業(yè)務(wù)的數(shù)據(jù)庫設(shè)計。在數(shù)據(jù)庫變更和處理流程、數(shù)據(jù)庫表設(shè)計、SQL編寫等方面予以規(guī)范,從而為公司業(yè)務(wù)系統(tǒng)穩(wěn)定、健康地運(yùn)行提供保障。
2.1 數(shù)據(jù)庫設(shè)計
以下所有規(guī)范會按照【高?!?、【強(qiáng)制】、【建議】三個級別進(jìn)行標(biāo)注,遵守優(yōu)先級從高到低。
對于不滿足【高?!亢汀緩?qiáng)制】兩個級別的設(shè)計,DBA會強(qiáng)制打回要求修改。
2.1.1 庫名
2.1.2 表結(jié)構(gòu)
2.1.3 列數(shù)據(jù)類型優(yōu)化
詳細(xì)存儲大小參加下圖:*
2.1.4 索引設(shè)計
2.1.5 分庫分表、分區(qū)表
2.1.6 字符集
2.1.7 程序?qū)覦AO設(shè)計建議
2.1.8 一個規(guī)范的建表語句示例
一個較為規(guī)范的建表語句為:
CREATE TABLE user (
`id` bigint(11) NOT NULL AUTO_INCREMENT,
`user_id` bigint(11) NOT NULL COMMENT ‘用戶id’
`username` varchar(45) NOT NULL COMMENT '真實(shí)姓名',
`email` varchar(30) NOT NULL COMMENT ‘用戶郵箱’,
`nickname` varchar(45) NOT NULL COMMENT '昵稱',
`avatar` int(11) NOT NULL COMMENT '頭像',
`birthday` date NOT NULL COMMENT '生日',
`sex` tinyint(4) DEFAULT '0' COMMENT '性別',
`short_introduce` varchar(150) DEFAULT NULL COMMENT '一句話介紹自己,最多50個漢字',
`user_resume` varchar(300) NOT NULL COMMENT '用戶提交的簡歷存放地址',
`user_register_ip` int NOT NULL COMMENT ‘用戶注冊時的源ip’,
`create_time` timestamp NOT NULL COMMENT ‘用戶記錄創(chuàng)建的時間’,
`update_time` timestamp NOT NULL COMMENT ‘用戶資料修改的時間’,
`user_review_status` tinyint NOT NULL COMMENT ‘用戶資料審核狀態(tài),1為通過,2為審核中,3為未通過,4為還未提交審核’,
PRIMARY KEY (`id`),
UNIQUE KEY `idx_user_id` (`user_id`),
KEY `idx_username`(`username`),
KEY `idx_create_time`(`create_time`,`user_review_status`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='網(wǎng)站用戶基本信息';
2.2.1 DML語句
2.2.2 多表連接
2.2.3 事務(wù)
2.2.4 排序和分組
2.2.5 線上禁止使用的SQL語句
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報,并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。