MySQL建表DDL规范(欢迎补充)
MySQL建表DDL规范(欢迎补充)
基本规范:
- 表名和字段名全大写,一般表名以T开头
- 脚本需支持可重复执行,带IF NOT EXISTS ,但不可带DROP语句
- 字符集使用utf8mb4 (CHARSET = utf8mb4 collate utf8mb4_unicode_ci)
- 脚本文件使用无BOM的UTF-8编码,否在会导致乱码
- 普通表,使用T开头,例如T_ACCOUNT
- 参数表,使用T_PARA开头,例如T_PARA_GENRAL_CONFIG
- 批量业务使用的表,使用T_BATCH开头,如T_BATCH_ACCOUNT_ITEM
- 流水类的表,必须带业务流水号、系统流水号(全局贯穿),例如T_TRANS_LOG_RECHARGE
案例DDL模板:
CREATE TABLE IF NOT EXISTS `T_XXXTODO`
(
`ID` bigint NOT NULL comment '主键id',
`COLUMN1` tinyint(4) NOT NULL comment 'xxx1',
`COLUMN2` tinyint(4) NOT NULL comment 'xxx1',
`COLUMN3` tinyint(4) NOT NULL comment 'xxx1',
`BIZ_DATE` date NOT NULL comment '业务日期',
`CREATED_DATETIME` datetime NOT NULL default CURRENT_TIMESTAMP comment '创建时间',
`LAST_MODIFIED_DATETIME` datetime NOT NULL default CURRENT_TIMESTAMP on update current_timestamp comment '更新时间',
`VERSION` int(11) NOT NULL comment '乐观锁版本号',
PRIMARY KEY (`ID`),
key T_XXXTODO_LAST_MODIFIED_DATETIME (LAST_MODIFIED_DATETIME)
) ENGINE = InnoDB
DEFAULT CHARSET = utf8mb4
collate utf8mb4_unicode_ci comment 'T_XXXTODO表';
MySQL建表DDL规范(欢迎补充)的更多相关文章
- 基于表的数据字典构造MySQL建表语句
表的数据字典格式如下: 如果手动写MySQL建表语句,确认麻烦,还不能保证书写一定正确. 写了个Perl脚本,可快速构造MySQL脚本语句. 脚本如下: #!/usr/bin/perl use str ...
- mysql建表出现Timestamp错误
mysql建表时如果有两个或以上的字段为Timestamp,那么可能会出现如下错误: Incorrect table definition; there can be only one TIMESTA ...
- MySql 建表出现的问题:[ERR] 1064 - You have an error in your SQL syntax; check the manual.......
使用 MySql 建表出现的问题 在使用 Navicat Premium 运行 sql 语句进行建表时,MySQL 报错如下: 建表语句: DROP DATABASE IF EXISTS javawe ...
- MySQL 建表语句 create table 中的列定义
MySQL 建表语句 create table 中的列定义: column_definition: data_type [NOT NULL | NULL] [DEFAULT default_value ...
- 三种常用的MySQL建表语句
MySQL建表语句是最基础的SQL语句之一,下面就为您介绍最常用的三种MySQL建表语句,如果您对MySQL建表语句方面感兴趣的话,不妨一看. 1.最简单的: CREATE TABLE t1( ...
- 【转载】mysql建表date类型不能设置默认值
如题,mysql建表date类型的不能设置一个默认值,比如我这样: CREATE TABLE `new_table` ( `biryhday` datetime NULL DEFAULT '1996- ...
- 抓取oracle建表语句及获取建表ddl语句
抓取oracle建表语句及获取建表ddl语句 1.抓取代码如下: 1.1.产生表的语法资料 DECLARE-- v_notPartTable VARCHAR2(1000):= '&2'; -- ...
- Mysql建表通用写法
Mysql建表通用写法 CREATE TABLE IF NOT EXISTS stu( id ) PRIMARY KEY AUTO_INCREMENT,//主键 自增 stuname ) NOT NU ...
- 【记录】Mysql 建表注意事项
博主最近打算搭建商城,由于之前对建表只有很浅显的理解,没有太过深入了解,建表过程中遇到一些问题,现记录如下, 如有问题请各位留言指正,感激不尽: 建表时设置如何设置联合主键?如下标红处: CREATE ...
随机推荐
- Spring-Batch将CSV文件转为XML文件
1 介绍 用Spring Batch实现一个简单的需求,将csv文件转换成xml文件. csv文件如下:record.csv username, user_id, transaction_date, ...
- 个人冲刺(四阶段)——体温上报app(一阶段)
任务:完成了后台数据库的类模块 MyDBHelper.java package com.example.helloworld; import android.content.Context; impo ...
- 每天一个 HTTP 状态码 101
101 Switching Protocols 当客户端的请求具有 Upgrade HTTP 首部,表示要求服务器切换到指定协议:此时服务器端就可以向客户端响应 101 Switching Proto ...
- FileAPI
FileAPI ```java File类的常见方法 1.创建. boolean createNewFile(); //创建文件 boolean mkdir();创建文件夹 boolean mkdir ...
- Java开发学习(二)----IOC、DI入门案例
一.IOC入门案例 1.1 思路分析 (1)Spring是使用容器来管理bean对象的,那么管什么? 主要管理项目中所使用到的类对象,比如(Service和Dao) (2)如何将被管理的对象告知IOC ...
- 深度学习与CV教程(6) | 神经网络训练技巧 (上)
作者:韩信子@ShowMeAI 教程地址:http://www.showmeai.tech/tutorials/37 本文地址:http://www.showmeai.tech/article-det ...
- GDB的简单使用一
GDB的简单使用一 一.概念 二.GDB的基本使用方法一 调试前预备知识 获取进程的内核转储 启动gdb调试 1.启动 2.设置断点 3.运行程序 4.显示栈帧 5.显示变量 6.显示寄存器 7.单步 ...
- 【lora无线数传通信模块】亿佰特E22串口模块用于物联网地震预警传感通信方案
物联网地震预警项目介绍: 地震,俗称地动.它像平常的刮风下雨一样,是一种常见的自然现象,是地壳运动的一种表现,即地球内部缓慢积累的能量突然释放而引起的地球表层的振动.据统计,5级以上地震就能够造成破坏 ...
- 深度学习与CV教程(14) | 图像分割 (FCN,SegNet,U-Net,PSPNet,DeepLab,RefineNet)
作者:韩信子@ShowMeAI 教程地址:http://www.showmeai.tech/tutorials/37 本文地址:http://www.showmeai.tech/article-det ...
- BUUCTF-[BJDCTF2020]认真你就输了
[BJDCTF2020]认真你就输了 下载通过16进制查看发现是压缩包,直接就binwalk分离查看. 分离直接得到几个文件,不过好像压缩包里的和外面的文件是一样的,所以直接翻一下目录 直接就找到了 ...