我的编程空间,编程开发者的网络收藏夹
学习永远不晚

sql设计表结构的常见问题有哪些

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

sql设计表结构的常见问题有哪些

这篇文章主要介绍sql设计表结构的常见问题有哪些,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!

1.sql改写遇到表字段经常要增加的业务怎么设计表结构?

2.业务问题是什么?

简单说就是有个表,字段经常变动,表结构该怎么设计?

例子:入金订单表(已经有29个字段)。因业务发展,入金订单有了拓展业务,有了三个拓展业务,paygo入金订单,自营入金订单,话费入金订单。paygo入金,需要增加4个字段(ADDRESS,LONGITUDE,LATITUDE,DEVICE_NO)。自营入金拓展需要增加7个字段(COUNTER_NO,BRANCH_NO,BUSINESS_CREATE_TIME,BUSINESS_ORDER_NO,BRANCH_NAME,SERVICE_FEE,ORDER_FEE)。话费入金订单需要增加1个字段。

不知道我说明白这件事情了吗?就是说,一个表经常增加字段,增加的字段又不是所有数据都用到。

3.表结构是如何设计的?

暂且称之为key-value方法。Ext_key存储增加字段名,ext_value存储字段值。

sql设计表结构的常见问题有哪些

sql设计表结构的常见问题有哪些

4.key-value设计带来的优点和缺点

sql设计表结构的常见问题有哪些

这个设计带来了很大灵活性,但是用起来,编写sql就不容易。设计到行转列,列转行。维护扩展起来不会方便。

来看下其中一个业务的sql:

如果统计的话会更复杂了。后期维护也会困难。

5.另外一种表结构设计,暂且称之为扩展表

再增加一个订单扩展表1,把经常变动的扩展字段放到扩展表。这样设计之后,可以想到,就变成了订单表和扩展表的简单join了,sql也更加清爽了。

sql设计表结构的常见问题有哪些

6.扩展表有什么缺点?

(1)经常改表结构,会不会锁表?当然会。但是目前oracle,包括mysql(5.7),增加表字段,增加字段速度很快。

(2)数据很多冗余。可以想到,paygo入金和自营入金相互用不到对方的字段,对应列就是空数据。空数据占用空间不大,我觉得可以忽略这个问题。

(3)假设这样一种情况,paygo入金订单扩展有1千万数据,自营入金订单扩展有500数据,话费入金订单扩展500条数据,paygo订单扩展表显得很冗余哦。遇到这种问题我觉得可以拆分:入金订单扩展表,paygo入金订单扩展表。这样编写sql的时候,也是非常简单的3表join.

以上是“sql设计表结构的常见问题有哪些”这篇文章的所有内容,感谢各位的阅读!希望分享的内容对大家有帮助,更多相关知识,欢迎关注亿速云行业资讯频道!

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

sql设计表结构的常见问题有哪些

下载Word文档到电脑,方便收藏和打印~

下载Word文档

猜你喜欢

Java缓存架构设计常见问题有哪些

本篇内容主要讲解“Java缓存架构设计常见问题有哪些”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Java缓存架构设计常见问题有哪些”吧!1 分层缓存架构设计2 缓存带来的复杂度问题常见的问题主
2023-06-02

SQL Server常见的问题有哪些

SQL Server常见的问题包括但不限于以下几个方面:1. 性能问题:SQL Server的性能问题可能包括慢查询、高CPU使用率、长时间的锁定、磁盘空间不足等。这些问题可能由于不正确的索引、不合适的查询计划、磁盘IO限制等原因引起。2.
2023-09-13

网站建设有哪些常见问题

本篇内容主要讲解“网站建设有哪些常见问题”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“网站建设有哪些常见问题”吧!  企业建立网站是目前企业发展的新趋势。国家对于各类型企业发展的鼓励政策使得企业
2023-06-10

Python列表中最常见的问题有哪些

这篇文章主要介绍“Python列表中最常见的问题有哪些”,在日常操作中,相信很多人在Python列表中最常见的问题有哪些问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”Python列表中最常见的问题有哪些”的疑
2023-06-02

常见的Python列表操作问题有哪些

这篇文章主要介绍“常见的Python列表操作问题有哪些”,在日常操作中,相信很多人在常见的Python列表操作问题有哪些问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”常见的Python列表操作问题有哪些”的疑
2023-06-16

Tunnel的常见问题有哪些

这篇文章主要介绍“Tunnel的常见问题有哪些”,在日常操作中,相信很多人在Tunnel的常见问题有哪些问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”Tunnel的常见问题有哪些”的疑惑有所帮助!接下来,请跟
2023-06-02

网站建设中常见的问题有哪些

小编给大家分享一下网站建设中常见的问题有哪些,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!问题一:域名问题域名的选择上,就是一个比较关键的问题,我们来看一下域名的
2023-06-10

android连接设备常见问题有哪些

1. 设备无法被识别:可能是由于USB驱动未安装或者设备未启用USB调试模式。2. USB连接断开:可能是由于USB线松动或者设备电量不足。3. 设备无法连接互联网:可能是由于网络设置错误或者无线网络信号强度不稳定。4. 设备无法进行文件传
2023-09-04

MySQL表结构设计:学校管理系统的常见问题与解决方案

MySQL表结构设计:学校管理系统的常见问题与解决方案引言:学校管理系统在现代教育管理中扮演着重要的角色。为了能够高效地管理学校的各种信息和数据,一个良好设计的数据库表结构是至关重要的。然而,在设计学校管理系统的数据库时,常常会遇到一些问题
MySQL表结构设计:学校管理系统的常见问题与解决方案
2023-10-31

Linux中有哪些常见的问题

这篇文章主要介绍了Linux中有哪些常见的问题,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。1、 文档文档及其不足是今年最大的痛点之一。尽管开源的方式产生了优秀的代码,但是制
2023-06-10

Windows Server的常见问题有哪些

安装问题:Windows Server安装过程中可能会遇到各种问题,例如无法启动安装程序、安装过程中的错误消息等。网络问题:Windows Server在配置网络时可能会遇到问题,例如无法连接到网络、无法访问Internet等。权限问题:W
Windows Server的常见问题有哪些
2024-02-29

编程热搜

目录