数据库表结构设计的一些总结

数据库表结构设计浅谈 转载自:http://hi.baidu.com/yzx110/blog/item/0159fadc7b7839a4cd116686.html数据库表结构设计浅谈    这篇文章如题所述,只打算谈一下数据库表本身设计,同时讲到和表结构相关的性能和扩展性问题。下面讲到的东西大多是从实际经验中总结而来,算是对这项技术的一个反思。   基本上在设计数据库表的时候,首先考虑设计要满足功能需求,这是最根本的,其次是满足性能需求,再次则是满足扩展性需求,这一点在大规模系统中是必须要考虑的。功能性需求比较容易满足,下面我主 阅读详情

前言

最近在工作中遇到了一些关于表结构设计的问题,我所在的公司,在表设计的时候有三个字段必须要有,create_time、update_time、version。这些字段也是大多数公司都会要求的,create_time记录创建时间,update_time记录修改时间,version乐观锁版本控制字段。最近遇到的一个问题就在坑爹的update_time上面。

问题描述

update_time这个字段在用户每次修改记录后就要跟新成当前时间,所以在实现更新操作的时候都需要默认的给update_time赋值成now(),有的同事为了偷懒在创建表的时候都加了这样一条语句

 `update_time` datetime DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,

加上这个触发器,记录在被更新的时候update_time会被重新赋值成当前时间,用户每次更新记录的时候update_time被自动更新,都不用写设置update_time的代码了,貌似问题得到解决了。但是,就在前段时间我们有个全表刷数据的需求,就写了一条SQL语句去执行,需求满足了,但是update_time也被全部刷成一样了,刚好系统上面有个功能是查询一段更新时间内的记录,由于更新时间全部被刷成一样了,这个查询一次查出了几百万条数据导致接口超时。其实,接口超时是一个问题,update_time这个字段的数据被刷成一样了,业务含义没有了才是最大的问题。

泛微最常用表结构 阅读详情

相关推荐

数据库架构设计——表结构设计

摘要 如何打造出一个能支撑海量的并发访问的分布式 MySQL 架构,本系列博文将从一下多个方面来分析有关MYSQL系统的架构设计相关原理。实际的业务为案例分析,分析实际业务中表使用的字段类型是如何选型,在介绍MySQL 中表的设计,比如表结构设计、访问设计、物理存储设计。通过模块一解决你表结构设计的痛点问题,让你打好架构设计最为基础的工作。 一、MySQL架构设计原理 1.1 表结构设计 实际的业务为案例分析,分析实际业务中表使用的字段类型是如何选型,在介绍MySQL 中表的设计,比如表结构设计、访

庄小焱 2万+

数据库表结构设计

为什么要学习数据表结构设计 实际开发中,需要根据需求,将实际模型转换成物理表结构,这时需要考虑几个问题,表名称如何命名,表中需要哪些字段,各个字段的命名规范,字段的数据类型,字段的长度,和其他表的联系,这些都是需要考虑的。 推荐使用的工具 PowerDesigner这个工具,可以做UUML图帮助分析数据关系,最重要的是可以把设计好的表结构转换成你使用的数据库的命令语句,方便在数据库中使用...

moyu的博客 2万+

泛微Ecology 9 最新数据库表结构

泛微Ecology 9 最新数据库表结构 泛微Ecology 9 最新数据库表结构 泛微Ecology 9 最新数据库表结构

mysql设计

有些业务上的字段,比如身份证,虽然是唯一的,一些开发者喜欢用它来做主键,但是不是很建议哈。我们在设计表的时候,需要充分考虑一个字段的长度,比如一个用户名字段(它的长度5~20个字符),你觉得应该设置多长呢?昨天一位粉丝,咨询了一个并发的问题~ 我提供了一个乐观锁兜底的方案,然后发现他们的表,都没有加version字段的,我想到,这不是表设计通用字段嘛。因此,一张表不要设计太多字段哈,如果业务需求,实在需要很多字段,可以把一张大的表,拆成多张小的表,它们的主键相同即可。首先,评估你的表数据量。

1138

泛微ecology E8协同办公系统详细的表结构(OA数据字典)

本文件包括ecology所有的数据库表的结构,例如工作流引擎常用的表:workflow_base 工作流信息表 workflow_bill 工作流单据信息表 workflow_billfield 工作流单据字段表 workflow_flownode 工作流节点信息表 workflow_nodelink 工作流出口信息表 workflow_nodebase 工作流节点基本信息表 workflow_nownode 工作流当前节点信息表 workflow_nodegroup 工作流节点操作组表 workflow_groupdetail 工作流程节点操作组操作人明细表 workflow_requestbase 工作流请求基本信息表 workflow_requestLo g 工作流请求签字日志表 workflow_requestViewLog 工作流请求查看日志 workflow_currentoperator 工作流当前操作人信息表 workflow_browserurl 工作流自定义浏览按钮信息表 workflow_selectitem 工作流下拉选择框选择项信息表

泛微Ecology8.0数据库字典、数据库表结构及表字段定义

流程引擎相关表名 序号 表名 中文名称 表类型 说明 1 outerdatawfdetail 输出数据流程详情表 2 outerdatawfperiodset 外部数据触发周期设置表 3 outerdatawfset 外部数据触发设置表 4 outerdatawfsetdetail 外部数据触发设置明细表 5 wfnodegeneralmode 流程节点生成模板 6 wfopinionfield 工作流签字字段意见基本信息表 7 wfopinionnodefield 工作流签字字段节点信息表 8 wfopiniontablenames 流程意见表名 9 workflowactionset 流程action配置表 10 workflowblacklist 手机用流程消息推送配置表 11 workflowplandetail 工作流周期性建立日志表 12 workflowplanset 流程计划设置表 13 workflowreportcustom 流程报表-定义报表个人设置 未完.......

表结构的设计

表结构的设计是数据库前期的基础,下图的设计表结构常用的模板,5个字段可以简单明了的说明问题。

Jian Sun_的博客 2045

泛微Ecology9.0工作流程最新版数据库表结构

泛微Ecology9.0工作流程最新版数据库表结构泛微Ecology9.0工作流程最新版数据库表结构泛微Ecology9.0工作流程最新版数据库表结构

表设置规则

1:表名设置: 1.系统模块 sys_ 2.支付模块 pay_ 3.订单模块 order_ 4.基础模型模块 bsc_ 5.会员模块 member_ 6.活动模块 activity_ 2:字段设置: 1、bool类型的或者是用数字来表示状态的,使用tinyint(1),无符号,字段名is_***,例如is_upload 2、主键采用自增int,pk_***,例如pk_hotel,酒店表的...

xulong5000的专栏 391

泛微e-cology数据库表结构设计

泛微OA系统二次开发参考使用,现在最新版本是8.0,该文档为7.0的。虽然有细小差别,但是给自学者使用已经足够了。大体结构与最新版本是一样的。

数据包络分析(超效率-SBM模型)附python代码

超效率-SBM模型超效率SBMpython代码(部分) 这段时间差不多忙完了,终于有时间可以来经营我的博客了。 上阵子挺多人私信我,原谅我记性不好,可能没有回复全。 这篇文章是超效率的扩展。 超效率SBM SBM本身就是非径向模型(non-radial model),想要了解径向超效率的请自行去前面翻阅。 上篇文章说到super-SBM的一个模型,公式为: 这个模型是分式模型,我们可以通过charnes cooper变换,将其转变成为: python代码(部分) 在编程过程中,本来我以为第一个模型是无

weixin_43217288的博客 3万+

MySQL数据库表结构的设计

MySQL数据库表结构的设计。四大范式。表结构的设计是数据库优化中至关重要的环节,需要认真谨慎对待,在遵守四大范式的前提下,充分考虑业务未来的可扩展性,适应未来业务变化,促进系统更加健康健壮。

WaltSmith的博客 2万+

PSM-DID实战指南:Stata代码解析与案例应用

本文详细解析PSM-DID方法在Stata中的实战应用,从理论到代码实现全面覆盖。通过倾向得分匹配(PSM)和双重差分(DID)的结合,有效解决政策评估中的选择偏差问题。文章提供完整的Stata命令代码、样例数据处理技巧和案例应用,帮助研究者准确评估政策效果。

vulkan6gpu的博客 793

MySQL数据库表结构设计

数据库的表结构设计

qq_38254635的博客 3647

GoPro官方API实战:从蓝牙配对到Wi-Fi流媒体,构建跨平台控制应用

本文详细解析了GoPro官方API的开发实践,涵盖蓝牙配对、Wi-Fi流媒体控制等关键技术。通过实战案例,指导开发者如何构建跨平台控制应用,解决设备发现、指令解析、视频流传输等核心问题,并分享Android平台迁移经验与常见问题排查方法。

weixin_30727835的博客 397

XianYuAutoDeliveryX:基于闲鱼API与大模型的智能自动发货系统实践

本文详细介绍了如何利用XianYuAutoDeliveryX系统,结合闲鱼API与大语言模型,构建一个智能自动发货解决方案。该系统能实现买家付款后秒级自动发货,并通过对接ChatGPT等大模型智能回复买家咨询,有效解放卖家时间,提升虚拟商品店铺的运营效率和客户体验。

bush的博客 1016

数据库表结构的设计

通过这三个字段可以有效的管理文件表。如果文件表过大,可以清理一段时间之前数据状态字段为0的数据,同时释放服务器中保存的文件资源。

C# window窗体计算器 1496

笔试题-2023-加特兰-数字IC设计【纯净题目版】

笔试题-2023-加特兰-数字IC设计【纯净题目版】

w0shishabi的博客 2248

数据库表结构及索引设计

数据库表设计 良好的表结构设计是高性能的基石,应该根据系统将要执行的业务查询来设计,这往往需要权衡各种因素。糟糕的表结构设计,会浪费大量的开发时间,严重延误项目开发周期,让人痛苦万分,而且直接影响到数据库的性能,并需要花费大量不必要的优化时间,效果往往还不怎么样。 在数据库表设计上有个很重要的设计准则,称为范式设计。 范式设计 什么是范式? 范式来自英文Normal Form,简称NF。MySQL是关系型数据库,但是要想设计—个好的关系,必须使关系满足一定的约束条件,此约束已经形成了规范,分成

xjk201的博客 2万+

Google Earth Engine(GEE)—— 显示如何使用迁移的训练样本进行多年分类的脚本(sentinel-2影像为例)光谱差异()

HydroSHEDS 是一种地图产品,它以一致的格式为区域和全球范围的应用程序提供水文信息。它提供了一套不同比例的地理参考数据集(矢量和栅格),包括河流网络、流域边界、排水方向和流量累积。请注意,对于北纬 60 度以上的地区,HydroSHEDS 数据的质量明显较低,因为没有可用的基础 SRTM 高程数据,因此分辨率较低的 DEM(USGS 提供的 HYDRO1k)。该数据集基于 15 角秒(赤道约 500 米)分辨率栅格数据提供嵌套的分层分水岭多边形。光谱信息和之前不同的点:训练结果。

此星光明博客 967

基于STM32、HAL库的GZP6816D气压传感器 驱动程序设计

测量范围:0-16kPa(可根据型号不同有变化)工作电压:1.8V-3.6V。高精度:±1% FS。

corlin6688的博客 219

数据仓库调优表实践 -表结构设计

主要介绍表结构设计的最佳实践。在进行调优表实践之前,需要先了解下表结构设计相关的内容。因为进行数据库设计时,表设计上的一些关键项将严重影响后续整库的查询性能。表设计对数据存储也有影响:好的表设计能够减少I/O操作及最小化内存使用,进而提升查询性能。本小节介绍如何设计DWS表结构(包括选择表存储方式、压缩级别、分布方式、分布列以及使用分区表和局部聚簇等),从而实现表性能的优化。

lish1988的博客 1348

手把手教你学Simulink--基于Simulink的近端策略优化(PPO)路径规划仿真建模

本文详细介绍了如何利用Simulink进行近端策略优化(PPO)路径规划的仿真建模。首先,文章概述了PPO路径规划的特点和挑战,强调了其在连续或离散动作空间问题中的高效性和稳定性。接着,列出了所需的工具和环境,包括MATLAB/Simulink、Reinforcement Learning Toolbox等。随后,文章分步骤详细讲解了从定义任务需求到验证与分析的整个仿真建模过程,包括创建Simulink项目、集成智能体模型、构建环境模型、编写PPO路径规划逻辑、将逻辑集成到Simulink模型中以及最终的验

MHD0815的博客 166

工作流数据库表结构设计

工作流数据库表结构设计 去发现同类优质开源项目:https://gitcode.com/ 本文档详细介绍了工作流管理系统中的数据库表结构设计,旨在帮助开发者和设计者更好地理解和实现工作流自动化。 简介 工作流,即业务流程的计算机化或自动化。在传统模式下,许多公司依赖纸质表单和手工传递方式来完成业务流程,这种方式不仅效率低下,而且无法实现统计报表功能。而采用工作流软件,则可以大大提高工作效率,实现知...

gitblog_06747的博客 883

IDEA的使用指南

IDEA基于java的使用手册,可以最快速的上手,在使用中不断的丰富自己的使用技巧.

VB摄像头监控

该VB模块可对摄像头捕获的画面进行录像等,可在创建的窗口进行控制

mysql设计表结构注意_数据库(表结构)设计技巧及注意事项

当您在决定开发一个数据库管理项目时,最先着手的工作就应是数据库表结构的设计了。可以这么说,表结构的设计是开发数据库管理项目的基石,一个糟糕的表结构设计,可能会严重延误您的项目开发周期,使您大量的劳动时间为此付之东流。表结构设计是数据库逻辑设计的重要组成部分,直接影响到数据库的性能,所以小编在本文对数据库(表结构)设计技巧及注意事项做一个讲解!1.表名一般以【模块名称_具体表名】来实现,同一个模块的...

weixin_36048512的博客 859

RU DOS版、EFI版32bit/64bit BIOS常用工具

DOS版、EFI版的RU工具,可用来查看IO、MEM、PCI、SMBIOS等资源。亲测在EFI SHELL下可用。

上一篇: Java测试框架Mockito源码分析
下一篇: Java总结系列
张焱飞
博客等级 码龄11年 8粉丝 12原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值