mysql建表注意事项。

2023-10-27

1.表达是否概念的字段,必须使用is_xxx的方式,数据类型是unsigned tinyint(1表示是,0表示否)。(pojo类中任何布尔类型的变量,都不要加is前缀)
2.表名,字段名必须使用小写字母或者数字。禁止出现数字开头,禁止只出现两个下划线中间只出现数字。(window下不区分大小写,但是linux区分,避免节外生枝)
3.表明不使用复数名词。
4.禁用保留字,如如desc,range,match,delayed.
5.小时类型为decimal,禁止使用float和double.
6.如果存储的字符串长度几乎相等,则应使用char定长字符串类型。
7.住建索引名为pk_字段名,唯一索引名uk_字段名,普通索引名idx_字段名。
8,varchar是可变长度字符串,不预先分配存储空间,长度如果超过5000个字符,则应定义为text,独立出来一张表,用主键来对应。
9,表必备三字段,id,gmt_create,gmt_modified,其中id为主键,类型为unsigned biginit,
单表时自增,步长为1,gmt_create和gmt_modified的类型为date_time类型,前者现在时表示主动创建,后者过去分词表示被动更新。
10.表的命名最高加上“业务名称_表的作用”
11.库名于应用名称尽量一致。
12.当修改字段含义或者字段表示的状态追加时,需要

及时更新字段注释。
13,.字段允许适当冗余,以便提高查询性能,但必须考虑数据一致。
冗余字段应遵循
1.不是经常修改的字段。
2.不能是varchar超长字段,更不能是tex字段。
14.当表超过500万行,或者表容量超过2GB时,才推荐进行分库分表。
15.设置合适的字符存储长度,不但可以节省数据表空间和索引存储,更重要的是能提升检索速度。
unsingned tinyint 1个字节 0-255
unsingned smallint 2个字节 0-65535
unsingned int 4个字节 0至42.9亿
unsingned bigint 8个字节 0至10的19次方。

引用在阿里巴巴java开发手册。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

mysql建表注意事项。 的相关文章

  • 在Windows中搭建Python Web开发环境

    最近的一个外包项目 客户要求IE8 兼容 之前做自己的个人项目都是在Ubuntu下开发 然后在Chrome上跑一下就OK 完全没有管IE兼容性 这次不行了 得啃下这个骨头 测IE兼容有一款工具必不可少 那就是IETester 从IE5 5到
  • java web开发一个帐号同一时间只能一个人登录

    一个帐号同一时间只能一个人登录 对于一个帐号在同一时间只能一个人登录 可以通过下面的方法实现 1 在用户登录时 把用户添加到一个ArrayList中 2 再次登录时查看ArrayList中有没有该用户 如果ArrayList中已经存在该用户
  • JDBC学习(四)时间类型

    在Java代码中 java sql包原则上不能出现在DAO以外的地方 数据库和java中的时间类型的对应关系 DATE gt java sql Date TIME gt java sql Time TIMESTAMP gt java sql
  • SiteMesh 过滤不装饰的页面

    意思也即是这个页面不被sitemesh过滤器装饰 我们可新建立一个文件夹 将不被装饰的页面放在里面 下面我们操作两个配置文件即可 1 在sitemesh xml里需要有excludes元素 lt sitemesh gt lt propert
  • Struts2 标签详解(学习深入)

    Struts2 标签详解 详细的说明了struts2所有标签 a a标签创建一个HTML超链接 等价于HTML 的
  • linux下设置mysql远程连接;

    1 阿里云开放3306端口 2 执行 使用 mysql 命令为 root 用户授权 mysql 远程连接服务 mysql gt grant all privileges on to root identified by root with
  • 基于SpringCloud的Microservices架构实战案例-在线API管理

    simplemall项目前几篇回顾 1基于SpringCloud的Microservices架构实战案例 序篇 2基于SpringCloud的Microservices架构实战案例 架构拆解 3基于SpringCloud的Microserv
  • 百度地图JavaScript API开发GIS服务

    百度地图JavaScript API是由JavaScript语言编写的应用程序接口 支持HTTP和HTTPS 免费对外开放 在使用前 需先申请密钥 ak 才可使用 主要分为两种类型的版本 JavaScript API GL 使用了WebGL
  • Tomcat中配置SSL

    Tomcat网站上 http tomcat apache org tomcat 5 5 doc ssl howto html Edit 20the 20Tomcat 20Configuration 20File 有相关配置SSL的介绍 建议
  • 前端web开发的MVC模式

    MVC概论起初来之桌面应用开发 其实java的structs框架最能体现MVC框架 model模型是理解成服务器端的模块程序 view为发送给客服端的内容 Controller为servlet程序控制跳转和工作流 随着前端Ajax兴起 前端
  • JS中setAttribute的使用

    在web开发中 经常会为某个标签设置属性 那么就可以利用js的setAttribute 方法为标签的属性设置值 下面的内容翻译自W3C DOM Level 1中关于setAttribute方法的说明 具体的方法参数如下 object set
  • vue3中使用第三方插件mitt实现任意组件通讯

    vue3中使用第三方插件mitt实现任意组件通讯 组件通讯是vue3组合式开发的核心之一 现在我在写代码时 一个组件的代码超过了200行 基本都会拆分组件 组件拆分后 组件之间的通讯就很重要 总结了一下 目前有这么几种组件通讯类型 父子通讯
  • pageHelper分页失效解决方案

    前言 pageHelper是一款优秀的Mybatis分页插件 在项目中可以非常便利的使用 使开发效率得到很大的提升 但不支持一对多结果映射的分页查询 所以在平时的使用时 对于一对多分页会出现分页错误 这篇文章主要对pageHelper分页错
  • python Web开发 flask轻量级Web框架

    O flask介绍 Flask是一个使用 Python 编写的轻量级 Web 应用框架 其 WSGI 工具箱采用 Werkzeug 模板引擎则使用 Jinja2 Flask使用 BSD 授权 Flask也被称为 microframework
  • 使用Koa2进行Web开发(二)静态文件与路由

    静态文件处理 这里选择koa static作为处理静态文件的中间件 const Koa require koa const app new Koa const serve require koa static app use serve d
  • Fiddler 教程

    Fiddler 教程 Fiddler是最强大最好用的Web调试工具之一 它能记录所有客户端和服务器的http和https请求 允许你监视 设置断点 甚至修改输入输出数据 使用Fiddler无论对开发还是测试来说 都有很大的帮助 阅读目录 F
  • 问题解决:io.lettuce.core.RedisCommandTimeoutException: Command timed out after

    环境 spring boot starter 2 x 和 sprig data starter data redis 2 x 在使用 connection bRPop timeout rawKey 方法时 如果这里的timeout大于spr
  • Jquery ligerui下拉框复选,使下拉框中相应值对勾选中

    othertypeCombox ligerGetComboBoxManager selectValue 1 2 3 4 othertypeCombox ligerGetComboBoxManager bulidContent 必须加上后一行
  • JWT token心得与使用实例

    本文你能学到什么 token的组成 token串的生成流程 token在客户端与服务器端的交互流程 Token的优点和思考 参考代码 核心代码使用参考 不是全部代码 JWT token的组成 头部 Header 格式如下 typ JWT a
  • 基于SSM框架实现一个用户系统(登录,用户列表,分页,增删改查,用户角色管理功能)

    首先搭建一个Maven工程 配置好Tomcat mybatis等 数据库 tb role tb user user role 这里只给了第一个用户管理员限权 可以对其他用户添加管理员 必须要用第一个用户登录 bean 这三个就不用多说了 直

随机推荐

  • .Net core基于xUnit的单元测试查看测试覆盖率

    写代码如何保证代码质量 基本大家都知道要做单元测试 那如何知道你单元测试是不是测试到了所有代码场景呢 这就要通过测试覆盖率来体现了 测试覆盖率 一般来说主要是Line代码行数覆盖率 同样还会有Branch分支覆盖率 Method方法覆盖率等
  • 使用QFrame类实现界面美化

    使用QFrame类实现界面美化 QFrame类是Qt框架中用于创建和显示矩形框架的基本组件 它可以用于美化界面 分割界面等多种场景 在Qt中使用QFrame类非常简单 我们只需要在ui文件中拖动一个QFrame控件并在代码中设置它的属性即可
  • 一刷总结!

    前面都还算顺利 走到贪心和动态规划的时候就感觉比较吃力了 就是那种怎样都感觉自己想不出来的 还需要多多练习和多多理解 有了这个监督之后 已经养成了每天要写算法的习惯 hh不错 希望能继续坚持下去 秋招能有一个好结果
  • Java-1.5

    题目描述 编写程序 计算 9 5 4 5 2 5 3 45 5 3 5 代码 法1 public class Calculate public static void main String args final double a 9 5
  • linux网络编程(三) TCP通信时序与多进程/线程并发服务器的编写

    文章目录 1 TCP通信时序 2 滑动窗口 TCP流量控制 3 出错处理封装函数 4 多进程并发服务器编写 5 多进程并发服务器编写 4 TCP状态转换 5 半关闭 6 2MSL 6 1 2MSL 6 2 端口复用 1 TCP通信时序 下图
  • 用python写注册登录界面web_用Python实现web端用户登录和注册功能

    这篇文章主要介绍了用Python实现web端用户登录和注册功能的教程 需要的朋友可以参考下 用户管理是绝大部分Web网站都需要解决的问题 用户管理涉及到用户注册和登录 用户注册相对简单 我们可以先通过API把用户注册这个功能实现了 RE M
  • GD32F303调试小记(零)之工程创建与编译

    前言 干这行的朋友都知道 真正拿单片机做项目时 作为软件编写人员 你所掌握的肯定不止一款单片机 又或者说你必须有能独立上手新单片机的能力 这里的新指的是对你个人来说是从未接触过的或者不熟悉的 而不一定是说这个单片机有多新 而调试一款新的单片
  • 二分类模型评价指标

    二分类模型指标 混淆矩阵 TP 实际为正预测为正 FP 实际为负但预测为正 TN 实际为负预测为负 FN 实际为正但预测为负 准确率 A c c u r a
  • kafka入门安装及消息发送接受初体验(附源码)

    这里是weihubeats 觉得文章不错可以关注公众号小奏技术 文章首发 拒绝营销号 拒绝标题党 官方文档 https kafka apache org quickstart 版本 3 5 0 安装 这里我们提供两种安装方式 一种是编译好的
  • Async异步处理【Springboot】

    简单实现异步处理 springboot异步处理 先建立一个controller目录 再建一个AsynController java 建立一个service目录 再建立一个AsynController java 启动项目 效果 1 在三秒以后
  • 电子科技大学软件工程期末复习笔记(四):软件设计

    目录 前言 重点一览 软件工程设计 软件设计定义 软件设计包含的两类活动 软件设计包涵 软件的质量属性 各种设计技术 程序结构 深度 宽度 扇入 扇出 完整的设计规格 软件体系架构 用户界面设计的3条原则 用户界面设计的3种分析 结构化设计
  • 5. zksnark 几种实现算法性能对比

    像 zk SNARK 这样的零知识证明有很多应用 Zcash利用零知识证明 来保护隐私 Coda和Mir利用零知识证明将整个区块链压缩到只有几K字节 0x和Matter则利用零知识证明将许多交易封装为以太坊 上的单一证明 1 可信设置 传统
  • Jumpserver 堡垒机

    一 Jumpserver简介 跳板机概述 跳板机就是一台服务器 开发或运维人员在维护过程中首先要统一登录到这台服务器 然后再登录到目标设备进行维护和操作 跳板机缺点 没有实现对运维人员操作行为的控制和审计 使用跳板机的过程中还是会出现误操作
  • unity的常见错误处理

    黄色提示 文件丢失 第一种情况 显示文件丢失 就去把文件拖到丢失的目录下 第二种情况 代码错误 无法识别 一般是调用的参数打错 红色提示 无法识别 当unity出现下列代码的情况时 we can t assign a new guid be
  • rabbitmq-给消息设置过期时间(九)

    TTL 全称 Time To Live 存活时间 过期时间 当消息到达存活时间后 还没有被消费 会被自动清除 RabbitMQ可以对消息设置过期时间 也可以对整个队列 Queue 设置过期时间 方式一 通过给队列配置属性设置消息的过期时间
  • js(art-­template、cookie、session、分页、注册、form、audio、video、移动端event、touch.js)

    art template 1 介绍 art template是一个简单且超快速的模板引擎 可通过范围内预先声明的技术优化模板渲染速度 从而实现接近JavaScript极限的运行时性能 同时它支持nodeJS和浏览器 2 基本使用 引入art
  • k8s之PV、PVC和StorageClass

    PV 什么是PV PV 描述的 则是一个具体的 Volume 的属性 比如 Volume 的类型 挂载目录 远程存储服务器地址等 创建PV 使用yaml来定义PV apiVersion v1 kind PersistentVolume me
  • Java多线程简析——Synchronized(同步锁)、Lock以及线程池

    Java多线程 Java中 可运行的程序都是有一个或多个进程组成 进程则是由多个线程组成的 最简单的一个进程 会包括mian线程以及GC线程 线程的状态 线程状态由以下一张网上图片来说明 在图中 红框标识的部分方法 可以认为已过时 不再使用
  • 关于npm cnpm yarm pnmp

    npm npm是什么 npm是node package manager的简称 node js 的包管理器 用于node插件管理 包括安装 卸载 管理依赖等 pm 是随同 node js 一起安装的包管理工具 能解决 node js 代码部署
  • mysql建表注意事项。

    1 表达是否概念的字段 必须使用is xxx的方式 数据类型是unsigned tinyint 1表示是 0表示否 pojo类中任何布尔类型的变量 都不要加is前缀 2 表名 字段名必须使用小写字母或者数字 禁止出现数字开头 禁止只出现两个