mysql 建库字段_MySQL 的字段类型以及建库策略

一、数字类型

所谓的“数字类”,就是指 DECIMAL 和

NUMERIC,它们是同一种类型。它严格的说不是一种数字类型,因为他们实际上是将数字以字符串形式保存的;他的值的每一位(包括小数点)占一个字节的存储空间,因此这种类型耗费空间比较大。但是它的一个突出的优点是小数的位数固定,在运算中不会“失真”,所以比较适合用于“价格”、“金额”这样对精度要求不高但准确度要求非常高的字段。

小数类,即浮点数类型,根据精度的不同,有 FLOAT 和 DOUBLE 两种。它们的优势是精确度,FLOAT

可以表示绝对值非常小、小到约 1.17E-38(0.000...0117,小数点后面有 37 个零)的小数,而 DOUBLE 更是可以表示绝对值小到约

2.22E-308(0.000...0222,小数点后面有 307 个零)的小数。FLOAT 类型和 DOUBLE 类型占用存储空间分别是 4 字节和 8

字节。如果需要用到小数的字段,精度要求不高的,当然用 FLOAT 了。可是说句实在话,我们“民用”的数据,哪有要求精度那么高的呢 ?

这两种类型至今我没有用过――我还没有遇到适合于使用它们的事例。

用的最多的,最值得精打细算的,是整数类型。从只占一个字节存储空间的 TINYINT 到占 8 个字节的

BIGINT,挑选一个“够用”并且占用存储空间最小的类型是设计数据库时应该考虑的。TINYINT、SMALLINT、MEDIUMINT、INT 和 BIGINT

占用存储空间分别为 1 字节、2 字节、3 字节、4 字节和 8 字节,就无符号的整数而言,这些类型能表示的最大整数分别为

255、65535、16777215、4294967295 和

18446744073709551615。如果用来保存用户的年龄(举例来说,数据库中保存年龄是不可取的),用 TINYINT

就够了;九城的《纵横》里,各项技能值,用 SMALLINT 也够了;如果要用作一个肯定不会超过 16000000 行的表的 AUTO_INCREMENT 的

IDENTIFY 字段,当然用 MEDIUMINT 不用 INT,试想,每行节约一个字节,16000000 行可以节约 10 兆多呢。

二、日期时间类型

日期和时间类型比较简单,无非是 DATE、TIME、DATETIME、TIMESTAMP 和 YEAR

等几个类型。只对日期敏感,而对时间没有要求的字段,就用 DATE 而不用 DATETIME 是不用说的了 ; 单独使用时间的情况也时有发生――使用 TIME;

但最多用到的还是用 DATETIME。在日期时间类型上没有什么文章可做,这里就不再详述。

三、字符(串)类型

不要以为字符类型就是 CHAR,CHAR 和 VARCHA

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/445816.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

mysql中建立text_mysql中text

一,char类型char列的长度固定为创建表时声明的长度。长度可以为从0到255的任何值。当保存char值时,在它们的右边填充空格以达到指定的长度。当检索到char值时,尾部的空格被删除掉。在存储或检索过程中不进行大小写转换。二,varcha…

前后分离接口规范

前后分离接口规范 随着互联网的高速发展,前端页面的展示、交互体验越来越灵活、炫丽,响应体验也要求越来越高,后端服务的高并发、高可用、高性能、高扩展等特性的要求也愈加苛刻,从而导致前后端研发各自专注于自己擅长的领域深耕…

mysql proxy 悲观锁_mysql悲观锁总结和实践

使用场景举例:以MySQL InnoDB为例商品t_goods表中有一个字段status,status为1代表商品未被下单,status为2代表商品已经被下单,那么我们对某个商品下单时必须确保该商品status为1。假设商品的id为1。一、如果不采用锁,那…

MySQL吉连_Learn Jdbc : Java, Jdbc, Odbc

Learn Jdbc : Java, Jdbc, Odbc 介绍Learn Jdbc : Java, Jdbc, OdbcLearn JDBC we precisely name what we are going to help you for Learning.As you are Beginner we keep in mind the same thing,we think like you and try to Build Apps Like Java Deep Learning,Java B…

python虚拟环境打包deb_可以为python脚本创建deb包吗?

下面是python脚本源包的一个基本示例。虽然大多数打包教程都有点复杂,但如果遇到问题,它们确实可以帮助您。也就是说,我首先通过简单地查看Debian包来学习Debian打包的基础知识。获取相似的源代码并通过示例学习。在以下是您的基本源程序包布…

python顺序结构实验报告_Python 数据结构 之 串 的顺序存储结构

本文所采用的数据结构模板为 《数据结构教程》C语言版,李春葆、尹为民等著。改篇所涉及到的是 串 的顺序存储结构。用Python仿照C语言来实现。代码地址:串 的顺序存储结构:# !/usr/bin/env python# -*- coding: utf-8 -*-__author__ MrHero""…

java五子棋源代码_java 五子棋游戏源码

【实例简介】【实例截图】【核心代码】package game;import java.applet.Applet;import java.applet.AudioClip;import java.awt.BorderLayout;import java.awt.Button;import java.awt.Container;import java.awt.FlowLayout;import java.awt.GridLayout;import java.awt.even…

java界面化_java怎么实现图形化界面

展开全部java图形化界面还62616964757a686964616fe78988e69d8331333363373232是有很多内容要学习的,可以参考 如下实例:public class Test extends JFrame{MyPanel mpnull;public static void main(String[] args){// TODO Auto-generated method stubTe…

java图形用户登录界面_Java简单登录图形界面

一.登录界面1.程序代码1 import java.awt.*;//导入awt包2 import javax.swing.*;//导入swing包3 import java.awt.event.ActionListener;//导入awt包中的监听器事件包4 import java.awt.event.ActionEvent;//导入awt包中的ActionEvent事件包56 public class EnterScreen extend…

北大青鸟java y2_Struts-2 北大青鸟 Y2学年 项目案例使用 2框架开发租房网站 Java Develop 249万源代码下载- www.pudn.com...

文件名称: Struts-2下载 收藏√ [5 4 3 2 1 ]开发工具: Java文件大小: 10225 KB上传时间: 2016-01-03下载次数: 0提 供 者: 姜鹏详细说明:北大青鸟 Y2学年 项目案例使用Struts 2框架开发租房网站-My English LOW文件列表(点击判断是否您需要的文件&#xff0c…

java int 包_int readInt()

int readInt()描述 (Description)java.io.ObjectInputStream.readInt()方法读取32位int。声明 (Declaration)以下是java.io.ObjectInputStream.readInt()方法的声明。public int readInt()参数 (Parameters)NA返回值 (Return Value)此方法不返回值。异常 (Exception)EOFExcepti…

java i o是什么流_Java I/O流的总结

I/O的类结构图I/O的分类根据处理的数据类型分为:字节流和字符流。根据数据流向分为:输入流和输出流。流又可分为节点流和处理流。节点流直接与数据源相连处理流与节点流一起使用,在节点流的基础上,再嵌套一层。提高文件的读取效率…

java i18n实例_Java国际化(i18n)格式化日期

本篇文章帮大家学习java国际化(i18n)格式化日期,包含了Java国际化(i18n)格式化日期使用方法、操作技巧、实例演示和注意事项,有一定的学习价值,大家可以用来参考。DateFormat类提供了各种格式来格式化日期。 以下是一些格式的列表。DateForma…

java placeholder_java – 如何在JTextfield中设置像Placeholder一样的文本

我用来覆盖文本字段绘制方法,直到我最终得到更多的自定义文本字段然后我真的想…然后我发现this prompt API易于使用,不需要你扩展任何组件.它还有一个很好的“伙伴”API这已经被包含在SwingLabs,SwingX library中,这使得它甚至可以使用……例如(这使用SwingX-1.6.4)import jav…

java web聊天室私聊map_java websocket聊天室示例(springboot)

【实例简介】【实例截图】【核心代码】package com.example.demo;import java.io.IOException;import java.text.DateFormat;import java.text.SimpleDateFormat;import java.util.Date;import java.util.concurrent.ConcurrentHashMap;import javax.websocket.OnClose;import …

Java 内存映射读取文件_Java内存映射 大文件轻松处理|chu

前言内存映射文件(Memory-mapped File),指的是将一段虚拟内存逐字节映射于一个文件,使得应用程序处理文件如同访问主内存(但在真正使用到这些数据前却不会消耗物理内存,也不会有读写磁盘的操作),这要比直接文件读写快几个数量级。…

LeetCode - Easy - 118. Pascal‘s Triangle

Topic Array Description https://leetcode.com/problems/pascals-triangle/ Given a non-negative integer numRows, generate the first numRows of Pascal’s triangle. In Pascal’s triangle, each number is the sum of the two numbers directly above it. Example…

LeetCode - Easy - 119. Pascal‘s Triangle II

Topic Array Description https://leetcode.com/problems/pascals-triangle-ii/ Given an integer rowIndex, return the rowIndexth row of the Pascal’s triangle. Notice that the row index starts from 0. In Pascal’s triangle, each number is the sum of the tw…

jenv java_mac 上使用jenv 管理的多个java 版本

由于服务器是java1.7, mac上是1.8,因此mac编译的java代码会在服务器上报错。因此,需要修改mac上java版本,自己折腾了很久,放弃,决定使用jenv 管理! 结果是非常方便使用步骤:1、安装 …

mysql 源码 缓存_MySQL源码:MYSQL存储过程/函数的分析原理及缓存机制

前言:我个人认为,有关MYSQL存储过程/函数在MYSQL中的实现比较粗糙,可扩展性不够好,其实现的耦合性太高,所以主要讲一些它的原理方面的内容,但有可能在某些方面理解不够好或者有些不正确的地方,欢…