028-86922220

建站动态

根据您的个性需求进行定制 先人一步 抢占小程序红利时代

MySQL数据库设计规范是什么

这篇“MySQL数据库设计规范是什么”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“MySQL数据库设计规范是什么”文章吧。

创新互联服务项目包括盂县网站建设、盂县网站制作、盂县网页制作以及盂县网络营销策划等。多年来,我们专注于互联网行业,利用自身积累的技术优势、行业经验、深度合作伙伴关系等,向广大中小型企业、政府机构等提供互联网行业的解决方案,盂县网站推广取得了明显的社会效益与经济效益。目前,我们服务的客户以成都为中心已经辐射到盂县省份的部分城市,未来相信会继续扩大服务区域并继续获得客户的支持与信任!

MySQL数据库设计规范是什么

规范背景与目的

MySQL 数据库与 Oracle、 SQL Server 等数据库相比,有其内核上的优势与劣势。我们在使用 MySQL 数据库的时候需要遵循一定规范,扬长避短。本规范旨在帮助或指导 RD、QA、OP 等技术人员做出适合线上业务的数据库设计。在数据库变更和处理流程、数据库表设计、SQL 编写等方面予以规范,从而为公司业务系统稳定、健康地运行提供保障。

数据库设计

以下所有规范会按照【高危】、【强制】、【建议】三个级别进行标注,遵守优先级从高到低。

对于不满足【高危】和【强制】两个级别的设计,DBA 会强制打回要求修改。

一般命名规则

create database db_name default character set utf8;

字段

字段数据类型优化

select inet_aton('192.168.2.12');
select inet_ntoa(3232236044);

Java 保存字符串ip 转 int 类型

public static long ipToLong(String addr)
{
    String[] addrArray = addr.split("\\.");
    long num = 0;
    for (int i = 0; i < addrArray.length; i++)
    {
        int power = 3 - i;
        num += ((Integer.parseInt(addrArray[i]) % 256 * Math.pow(256, power)));
    }
    return num;
}
public static String longToIp(long i){
    return ((i >> 24) & 0xFF) + "." +
           ((i >> 16) & 0xFF) + "." +
           ((i >> 8) & 0xFF) + "." +
           (i & 0xFF);
}

索引设计

分库分表、分区表

字符集

程序层 DAO 设计建议

一个规范的建表语句示例

一个较为规范的建表语句为:

create table user
(
    `id`            bigint(11) not null auto_increment,
    `user_id`       bigint(11) not null comment '用户 ID',
    `username`      varchar(45) not null comment '登录名',
    `email`         varchar(30) not null comment '邮箱',
    `nickname`      varchar(45) not null comment '昵称',
    `avatar`        int(11) not null comment '头像',
    `birthday`      date not null comment '生日',
    `gender`        tinyint(4) default '0' comment '性别',
    `intro`         varchar(150) default null comment '简介',
    `resume_url`    varchar(300) not null comment '简历存放地址',
    `register_ip`   int not null comment '用户注册时的源 IP',
    `review_status` tinyint not null comment '审核状态,1-通过,2-审核中,3-未通过,4-尚未提交审核',
    `create_time`   timestamp not null comment '记录创建的时间',
    `update_time`   timestamp not null comment '资料修改的时间',
    primary key (`id`),
    unique key `idx_user_id` (`user_id`),
    key `idx_username`(`username`),
    key `idx_create_time`(`create_time`, `review_status`)
)
engine = InnoDB
default charset = utf8
comment = '用户基本信息';

DML 语句

多表连接

事务

排序和分组

线上禁止使用的 SQL 语句

以上就是关于“MySQL数据库设计规范是什么”这篇文章的内容,相信大家都有了一定的了解,希望小编分享的内容对大家有帮助,若想了解更多相关的知识内容,请关注创新互联行业资讯频道。


分享标题:MySQL数据库设计规范是什么
分享路径:http://www.tsicrk.com/article/poegdj.html

其他资讯

让你的专属顾问为你服务

2.3068s