mysql数值美观_数据库调优教程(十一) 设计一张漂亮的表

四、           设计一张漂亮的表

上一章讲了如何通过索引来提速我们的查询语句,这一章让我们回到数据库开发的初始阶段,建表。谈谈怎样设计一张漂亮的表。

1.      满足三范式

1NF: 即表的列的具有原子性,不可再分解,即列的信息,不能分解, 只要数据库是关系型数据库(mysql/oracle/db2/informix/sysbase/sqlserver),就自动的满足1NF

数据库的分类

关系型数据库:  mysql/oracle/db2/informix/sysbase/sql server

非关系型数据库:  面向对象或者集合

面向文档数据库:   MongoDB

2NF: 表中的记录是唯一的, 就满足2NF, 通常我们设计一个主键来实现。一般情况下,表中都必须设置主键,并且一般不含业务逻辑,可以设置为自增长。

3NF: 即表中不要有冗余数据, 就是说,表的信息,如果能够被推导出来,就不应该单独的设计一个字段来存放.

有时候为了减少查询次数,可以容忍冗余。

2.      字段数目不要过多

一张表的字段过于庞大,会导致查询时的扫描范围加大,即使你并没有查询相应字段。

所以,如果一张表某个字段,信息量大,但是我们很少查询,则可以考虑把这些字段,单独的放入到一张表中,这种方式称为垂直分割

3.      选择合适的字段类型

在创建表的时候要选取最适用的字段属性。

一般说来,数据库中的表越小,在它上面执行的查询也就会越快。因此,在创建表的时候,为了获得更好的性能,我们可以将表中字段的宽度设得尽可能小

举个例子

11位的手机号

有两种类型可以存储

Bigint、char(11)。Int类型最大2147483647不可存

考虑到Bigint占20字节,而char(11)占11*2=22(gbk)或11*3=33(utf-8),所以使用bigInt是最好的。

如果在创建表之后发现表的字段设置不够合理想修改时怎么修改呢?

4.      修改表结构

如果发现表的字段设置不够合理想修改时怎么修改呢,有两种方法。

传统方法

先使用show createtable 查看原先怎样创建字段的

然后就可以根据需要修改了

alter table patent_data modify mingcheng varchar(500) DEFAULT NULL COMMENT '名称';

fa69e2130a2619098457a018ed79a92e.png

快速方法(简单粗暴而高效)

创建一个结构是你所需要的空表,关闭mysql,在文件夹中直接复制新生成的表的frm文件替换掉原来表的的frm文件

注:

Frm文件位于mysql安装目录下的   /data/数据库名   目录下

本章结束,下一章将谈谈sql语句的优化方法。

【信息科学与工程学】【数据科学】第五十一篇 数据仓库00 基础设计01 数据仓库设计的系统性解决方案,涵盖架构模式、分层设计、百万级访问支撑、海量数据配置及与数据库/数据湖的对接策略: ​​ODS(操作数据层)​​:原始数据镜像,保留历史快照 ​​DWD(明细数据层)​​:清洗、标准化、维度退化 ​​DWS(汇总数据层)​​:主题宽表、轻度聚合 ​​ADS(应用数据层)​​:高度聚合,面向报表/API ​​二、百万用户访问架构设计​​ ​​1. 核心架构组件​​ ​​2. 关键配置参数(以Snowflake为例)​​ ​​3. 性能优化措 阅读详情

相关推荐

《哥谭神话-工程篇》02.Palantir的Ontology层(语义层) -企业操作系统的大脑

Ontology(语义层) 是Foundry 的核心层。Ontology 位于集成到 Foundry 中的数字资产(数据集和模型)之上,并将其连接到现实世界的对应物,从工厂、设备和产品等物理资产到客户订单或金融交易等概念。本篇将详细拆解Ontology(语义层)。

888

新来个大厂同事,数据库设计的居然这么漂亮,佩服!

点击上方“芋道源码”,选择“设为星标”管她前浪,还是后浪?能浪的浪,才是好浪!每天 10:33更新文章,每天掉亿点点头发...源码精品专栏原创 | Java 2021超神之路,很肝~中文详细注释的开源项目RPC 框架 Dubbo 源码解析网络应用框架 Netty 源码解析消息中间件 RocketMQ 源码解析数据库中间件 Sharding-JDBC 和 MyCAT 源码解析作业调度中间件 E...

芋艿V 367

find命令

命令是 Linux/Unix 系统中用于搜索文件和目录的强大工具,支持多种搜索条件组合,并能对搜索结果执行各种操作。以下是其详细说明、常用参数及示例: 搜索路径:指定起始目录(如 、 或 表示当前目录)。 查找条件:基于文件名、类型、大小、时间等属性过滤。 处理动作:对匹配结果执行操作(如打印、删除、执行命令等)。 常用参数及示例 1. 按名称查找 :区分大小写匹配文件名。 :不区分大小写匹配文件名。 2. 按文件类型查找 :指定文件类型。 文件类型: :普通文件 :目录 :符号链接

qiao2458的博客 1136

linux 下面查询sql展示更好看的方式

select * from wp_member m where m.id = 111; 这个sql查出来的数据就只有一条,在Linux上面为了展示更好看,可以在sql后面加上\G; 如: select * from wp_member m where m.id = 111 \G 它就会竖着显示了

huangbaiping的博客 2599

保姆级教程:用Docker快速部署mpromonet/webrtc-streamer实现WebRTC直播(附常见问题解决)

本文提供了一份详细的Docker部署mpromonet/webrtc-streamer的实战指南,帮助用户快速搭建WebRTC直播服务。内容涵盖从环境准备、基础部署到进阶配置与性能调优的全过程,并针对容器网络、视频流配置、跨网访问等常见问题提供了解决方案,旨在实现低延迟的流媒体传输。

dell8的博客 177

vfsglobal预约系统登录问题全解析(by quqi99)

本文全面解析VFS Global预约系统登录常见问题,包括IP限制、验证码验证失败及账号自动删除等。提供详细的解决方案,如DNS配置、浏览器设置及邮箱选择建议,帮助用户顺利完成签证预约。特别针对中国用户遇到的IP限制问题,给出了实用技巧。

gamma的博客 1341

mysql好看的_mysql---视图

一、定义视图是虚拟的表。与包含数据的表不一样,视图只包含使用时动态检索 数据的查询。二、语法CREATE[OR REPLACE][ALGORITHM= {UNDEFINED | MERGE |TEMPTABLE}][DEFINER=user][SQL SECURITY { DEFINER|INVOKER }]VIEW view_name [(column_list)]AS select_state...

weixin_34511324的博客 184

STM32外部中断EXTI原理与飞控实时应用实战

外部中断(EXTI)是嵌入式系统中实现事件驱动和实时响应的核心机制,其本质是将外部电平变化转化为可调度的CPU中断事件。基于ARM Cortex-M NVIC架构,EXTI通过GPIO-EXTI-NVIC三级硬件通路实现低延迟信号捕获,具备边沿触发、优先级管理与挂起控制等关键能力。在四轴飞控、工业传感器、人机交互等对毫秒级响应有强需求的场景中,EXTI显著优于轮询方式,兼顾实时性与CPU资源效率。实际开发需严格遵循SYSCFG映射→EXTI配置→NVIC使能的时序逻辑,并规避常见陷阱如中断号误配、伪触发、低

weixin_36382073的博客 65

mysql中如何美化sql_手把手教你给 SQL 做个优化

在开始之前,咱们要知道:如果我的 SQL 语句执行的足够快,还有没有必要去做优化?完全没有必要对吧所以我们一般说,要给 SQL 做个优化,那肯定就是这条 SQL 语句执行的比较慢了那么,为什么它会执行比较慢呢?SQL 语句执行较慢的 3 个原因没有建立索引,或者索引失效导致了 SQL 语句执行较慢这个应该是比较好理解的,如果数据比较多,在千万级别以上,然后呢又没有建立索引,在这千万级别的数据中查找...

weixin_39773447的博客 1485

Python爬虫终极实战:逆向解析+异步处理,高效爬取中关村在线万级产品数据

爬虫工程师的战场,已经从简单的HTML解析,转向了对网络协议、JavaScript执行逻辑的深度逆向工程。然后刷新页面,当浏览器发起这个请求时,执行会暂停,我们可以一步步跟蹤调用栈(Call Stack),找到发起请求前的JavaScript代码,从而发现参数的计算逻辑。它们会添加一个动态的、一次性的签名(token)或加密参数,用于验证请求的合法性。这是整个爬虫最核心、最具技术含量的部分。的请求,其响应体正是结构清晰的JSON数据,包含了当前页面的所有手机信息(产品ID、名称、价格、图片等)。

2201_76125261的博客 429

【四足机器人项目实战】四足机器人嵌入式硬件设计

系列文章目录 提示:这里可以添加系列文章的所有文章的目录,目录需要自己手动添加 TODO:写完再整理 文章目录系列文章目录前言一、电源管理板设计及制作二、通讯中继板设计及制作三、力控无刷电机驱动板设计及制作1.磁场定向控制FOC控制原理2.电机转子位置、速度检测原理3.硬件CAN通讯原理 前言 认知有限,望大家多多包涵,有什么问题也希望能够与大家多交流,共同成长! 本文先对四足机器人–嵌入式硬件设计做个简单的介绍,具体内容后续再更,其他模块可以参考去我其他文章 提示:以下是本篇文章正文内容 一、电

qq_35635374的博客 1万+

mysql数值美观_Windows环境下的MySQL:一场精彩漂亮的比赛

今天早上,一篇来自MySQL 用户讨论会的高级销售专家Gerardo Narvaja的博客 在Bruam的文章(http://port25.technet.com/archive/2007/04/24/the-beautiful-game.aspx)中他用了一个比喻,把 Microsoft与MySQL的合作竞争比作一今天早上,一篇来自MySQL 用户讨论会的高级销售专家Gerardo Narvaj...

weixin_29386469的博客 138

Dify智能体开发:大语言模型(LLM)问题分类

通过定义分类描述,问题分类器能够根据用户输入,使用 LLM 推理与之相匹配的分类并输出分类结果,向下游节点提供更加精确的信息。

王国平的博客 2249

mysql表的操作

一、学习任务1:表的基本概念 在MySQL数据库中,表是一种很重要的数据库对象,是组成数据库的基本元素,由若干个字段组成,主要用来实现存储数据记录。表的操作包含创建表、查看表、删除表和修改表,这些操作是数据库对象的表管理中最基本、最重要的操作。 表是包含数据库中所有数据的数据库对象。数据在表中的组织方式与在电子表格中相似,都是按行和列的格式组织的。其中每一行代表一条唯一的记录,每一列代表记录中的一个字段。如下图所示。 •列(Cloumns):也称属性列,在具体...

Albert__Einstein的博客 8594

蓝牙模块HM-10手册

蓝牙模块HM-10手册,该手册对蓝牙模块HM-10进行了详细的介绍和使用方法以及一些AT指令。

Devexpress16.2.6破解工具

Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具

关系数据库-MySQL入门实战教程

在本教程中,我们将深入浅出地探索MySQL——世界上最受欢迎的开源关系型数据库管理系统之一。从安装配置到高级操作,你将学会如何高效地使用MySQL进行数据管理和操作。同时,我们还将介绍如何利用强大的数据库设计、建模软件,它能帮助你在线设计美观的ER图,并通过AI技术提升工作效率,自动生成CRUD代码,无缝对接你的开发工具。

java电商源码分享 501

TMS_WebGMaps_1.9.8.0_Full_Source

TMS_WebGMaps_1.9.8.0_Full_Source 全源码 delphi cbuilder

数据库和表的基本操作

1.数据库基础知识 1.1创建和查看数据库 在MySQL中创建数据库的基本语法格式如下: CREATE DATABASE 数据库名称; 查看数据库的SQL语句如下: SHOW DATABASES; 创建好数据库后想要查看某个已经创建的数据库信息,可以通过SHOW CREATE DATABASE 语句查看,具体语法格式如下: SHOW CREATE DATABASE 数据库名称; 1.2修改数...

He_Never_Changes的博客 1333

锂电池充电器电路设计 里面有电路

锂电池充电器电路设计 里面有电路 3.7V升压到5V电路设计。

数据库Mysql介绍和sql查询语言和node操作mysql

目录 什么是数据库? 常见数据库【重点】 存储数据的方式 mysql安装 mysql数据库基础概念 数据可视化工具 连接mysql数据库的两种方式【重点】: 常见的数据类型 设计表的规则 备份与还原【重点】 SQL查询语言 SQL的主要内容 增删改查【重点】 添加数据 删除数据 更新数据 查询数据 其它子句 where 条件 order by排序 group by分组查询、聚合查询 limit join联表查询【重点】 什么是数据库? 数据库(databa.

weixin_58139900的博客 1586

MySQL base(数据库之MySQL基础·中文)

MySQL base 数据库之MySQL基础·中文 MySQL 数据库 数据库介绍 关系型数据库(SQL) ​ 存储方式固定,安全 ​ 分类储存;列表…… ​ eg:MySQL 非关系型数据库(NoSQL) ​ 存储方式灵活,效率高,不太安全 ​ 整体存储;像建立模型 ​ eg:MongoDB 库,表操作 ——MySQL管理工具管理库,库中存放表,数据以字段的形式保存在表中。 MySQL不严格区分大小写,但为了程序美观,遵循大写为程序原代码,小写为自定义代码。 语句结束符:每个语句都以 ;或者 \g 结

fStardust的博客 888

MYSQL数据库(基本篇)一篇文章带你走进MYSQL数据库的奇妙世界

MYSQL算是我们程序员必不可少的一份求职工具了 无论在什么岗位,我们都可以看到应聘要求上所书写的”精通MYSQL等数据库及优化“ 那么我们今天就先来了解一下MYSQL的整体布局并且带你掌握MYSQL的基本内容,希望能为你带来帮助!

m0_37449634的博客 137

mysql 两个小数点类型_Mysql数值类型,小数点后保留两个零

如有不足请帮忙留言区补充谢谢~一,数值类型保留小数点后两个0在存入数据时,应客户需求数值类型,比如钱数,分数等等需要精确到小数点后几位。800存入时显示为800.00方法:在建表时直接定义此数值的类型为float,double或decimal类型例如:1 create tablenum(2 shuzi float(4,2),3 shuzi2 double(4,2),4 shuzi3 d...

weixin_42163404的博客 1346

mysql数值美观,一款好用、美观的OneDrive目录列表程序:OLAINDEX

简介OneDrive目录索引;基于最新PHP框架laravel5搭建而成;基于bootswatch响应式页面布局,适配PC、平板、手机;功能OneDrive目录索引;代码、图片、文件及时预览;文件一键复制、下载;后台基本管理,支持主题,预览设置等等(清理缓存后及时生效);加密文件夹访问(需登录管理);图床功能(国内不太稳低);后台文件上传。TODO后台大文件上传,断点续传等更多视频以及字幕支持后台...

weixin_30296797的博客 427

MySQL 数据库

一、数据库介绍 1.1 什么是数据库? 数据库(database)是用来组织、存储和管理数据的仓库。要想管理数据就需要安装对应的软件:比如我们的excel。 1.2 常见数据库 常用的关系型数据库有: (1)MySQL 数据库,目前使用最广泛、流行度最高的开源免费数据库 (甲骨文) (2)Oracle 数据库,收费 (甲骨文) (3)SQL Server 数据库,收费 (微软) 以上三种属于传统型数据库,又叫做:关系型数据库 ,这三者的设计理念相同,用法比较类似。 常用的非关系型数据库有:

weixin_60488295的博客 836

睿思BI开源版从部署到实战:避坑指南与性能调优全解析

商业智能(BI)与数据可视化是企业数据驱动决策的核心技术,其原理在于将多源数据通过ETL或直连方式整合,并利用图表引擎进行直观呈现。这项技术的价值在于降低数据分析门槛,提升业务洞察效率,广泛应用于运营监控、销售分析和用户行为洞察等场景。随着数据安全与成本控制意识增强,自主可控的开源BI方案成为趋势。本文聚焦睿思BI开源版,针对其快速部署、数据连接和交互式仪表盘构建,提供了详尽的实战指南。文中特别融入了对“Docker Compose部署”和“查询性能调优”等关键热点的深度解析,帮助读者高效落地企业级数据可视

weixin_30430169的博客 393

MySQL中的INT(4)里面的4究竟代表着什么

INT

但老师 1125

Go语言中MySQL数据库的应用

连接数据库 db, err := sql.Open("mysql", username:password@protocol(address)/dbname?param=value) 第一个参数是驱动器,第二个参数就是数据库信息。 defer db.Close() 断开数据库连接函数。

lijf2001的博客 342

mysql小数保留_Mysql数值类型,小数点后保留两个零

如有不足请帮忙留言区补充谢谢~一,数值类型保留小数点后两个0在存入数据时,应客户需求数值类型,比如钱数,分数等等需要精确到小数点后几位。800存入时显示为800.00方法:在建表时直接定义此数值的类型为float,double或decimal类型例如:1 create tablenum(2 shuzi float(4,2),3 shuzi2 double(4,2),4 shuzi3 d...

weixin_32287177的博客 1310
上一篇: layui添加富文本编辑器_定制富文本编辑器
下一篇: java 反射机制 调用方法_java 通过反射机制调用某个类的方法
L oiey
博客等级 码龄10年 36粉丝 1668原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符  | 博主筛选后可见
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值