zoukankan      html  css  js  c++  java
  • MySql数据库表设计规范

    建表规约

    索引规约

    SQL 语句

     

     其他实战建议

    选用utf8编码

    可以将 MySql 的字符集由 utf8 调整为 utf8mb4。utf8mb4 是 MySql 在 5.5.3 版本之后增加的一个编码方式,用来兼容四字节的 Unicode(包括 Emoji)。

    理论上,utf8mb4 是 utf8 的超集,其中 mb4 是 most bytes 4 的意思,将字符集修改为“utf8mb4”,并不会对已有的 utf8 编码读取产生任何问题。

    但通常这种方式并不是最优解,因为应用层还需要将 MySql 的连接方式作出以下调整:

    jdbcUrl = jdbc:mysql://localhost/jfinal_demo?characterEncoding=utf8mb4&useSSL=false&zeroDateTimeBehavior=convertToNull

     

    建议使用InnoDB存储引擎

    建议每张表都设置一个主键

    建议字段定义为NOT NULL

    唯一值字段要指定唯一性约束

    ALTER TABLE USER  ADD UNIQUE (CEmail)

    不建议使用ENUM类型,使用TINYINT来代替

    存储精确浮点数必须使用DECIMAL替代FLOAT和DOUBLE

    建议使用INT UNSIGNED存储IPV4

    VARCHAR(N),N尽可能小,因为MySQL一个表中所有的VARCHAR字段最大长度是65535个字节,进行排序和创建临时表一类的内存操作时,会使用N的长度申请内存。

    存储年使用YEAR类型,存储日期使用DATE类型,存储时间(精确到秒)建议使用TIMESTAMP类型,因为TIMESTAMP使用4字节,DATETIME使用8个字节。

    效率来说基本是char>varchar>text,但是如果使用的是Innodb引擎的话,推荐使用varchar代替char。

  • 相关阅读:
    websocket的理解及实例应用
    laravel框架cookie应用到中间件的理解
    PHP多机实现session共享
    mysql中exists的详细说明
    window环境下安装pear
    php 进程管理及操作
    PHP设计模式之职责链模式
    PHP设计模式之备忘录模式
    PHP设计模式之装饰模式
    PHP设计模式之策略模式
  • 原文地址:https://www.cnblogs.com/cnki/p/6263093.html
Copyright © 2011-2022 走看看