一、数据类型

1、数值类型

为每张表的每个字段选择合适的数据类型是数据库设计过程中一个重要的步骤。

数字分为整数和小数。其中整数用整数类型表示,小数用浮点数类型和定点数类型表示。

浮点数类型包括单精度浮点数 FLOAT 类型和双精度浮点数 DOUBLE 类型。定点数类型就是 DECIMAL 类型,DEC 和 DECIMAL 这两个定点数类型是同名词

注意事项:
数字类型的选择应遵循如下原则。
1)选择最小的可用类型,如果改字段的值不会超过 127,则使用 TINYINT 比 INT 效果好。
2)对于完全都是数字的,即无小数点时,可以选择整数类型,比如年龄。
3)浮点类型用于可能具有的小数部分的数,比如学生成绩。
4)在需要表示金额等货币类型时优先选择 DECIMAL 数据类型。

2、日期时间类型

MySQL 主要支持 5 种日期类型:DATE、TIME, YEAR、DATATIME 和 TIMESTAMP

3、字符串类型

字符串类型的数据分为普通的文本字符串类型(CHAR 和 VARCHAR)、可变类型(TEXT 和 BLOB)

4、复合类型

MySQL 数据库还支持两种复合数据类型 ENUM 和 SET,它们扩展了 SQL 规范。

Enum 类型的字段只允许从一个集合中取得某一个值,有点儿类似于单选按钮的功能。例如,一个人的性别从集合 {‘男’,‘女’} 中取值,且只能取其中一个值。

Set 类型的字段允许从一个集合中取得多个值,有点儿类似于复选框的功能。例如,一个人的兴趣爱好可以从集合 {‘看电影’,‘购物’,‘听音乐’, ‘旅游’,‘游泳’} 中取值,且可以取多个值。

5、二进制类型

MySQL 主要支持 7 种二进制类型:binary、varbinary、bit、tinyblob、blob、mediumblob 和 longblob

注:Text 与 blob 都可以用来存储长字符串,text 主要用来存储文本字符串,例如新闻內容、博客日志等数据;blob 主要用来存储二进制数据,例如图片、音频、视频等二进制数据。

在真正的项目中,更多的时候需要将图片、音频、视频等二进制数据,以文件的形式存储在操作系统的文件系统中,而不会存储在数据库表中,毕竟,处理这些二进制数据并不是数据库管理系统的强项。

6、合适的数据类型

通常来说,数据类型的选择遵循以下原则:

(1)在符合应用要求(取值范围、精度)的前提下,尽量使用 “短” 数据类型

(2)数据类型越简单越好

(3)尽量采用精确小数类型(例如 decimal),而不采用浮点数类型

(4)在 MySQL 中,应该用内置的日期和时间数据类型,而不是用字符串来存储日期和时间

(5)尽量避免 NULL 字段,建议将字段指定为 NOT NULL 约束

二、运算符

1、算术运算符

算术运算符包括加、减、乘、除和取余运算。他们是最常用的、最简单的一类运算符

2、比较运算符

MySQL 数据库允许用户对表达式的左边操作数和右边操作数进行比较,比较结果为真返回 1,为假返回 0,不确定返回 NULL

3、逻辑运算符

逻辑运算符,也称为布尔运算符,判断表达式的真假。

4、位运算符

位运算符是将给定的操作数转化为二进制后,对各个操作数的每一位都进行指定的逻辑运算,得到的二进制结果转化为十进制数后就是位运算的结果。

Learning-MySQL【3】:数据类型和运算符的更多相关文章

  1. 03 MySQL之数据类型和运算符

    01-数据类型 MySQL支持多种数据类型,主要有 数值类型.日期/时间类型和字符串类型. 1.1 整数类型 1.2 浮点数类型和定点数类型 单精度浮点类型(FLOAT)和双精度浮点类型 (DOUBL ...

  2. PostgreSQL自学笔记:5 数据类型和运算符

    5 数据类型和运算符 5.1 PostgreSQL 数据类型介绍 5.1.1 整数类型 整型类型 字节 取值范围 smallint 2字节 -2^15 ~ 2^15 int integer 4字节 - ...

  3. IOS开发新手教程(一)-数据类型和运算符

    OC语法入门(一) 数据类型和运算符 1.1凝视 凝视和其它语言一样,同意单行 ,多行凝视,一份规范的代码里面须要有一些正式的凝视,例如以下凝视: /* 这是多行 凝视 */ //这是多行凝视 OC语 ...

  4. Java 第二章 变量、数据类型和运算符

    第二章      变量.数据类型和运算符 什么是变量: 变量代表一块内存区域,变量类型不一样,这一块内存的大小也不一样. #在编程语言里面,你可以通过定义变量,向内存里添加数据或者修改内存已有的数据. ...

  5. Java1变量数据类型和运算符

    day02_变量数据类型和运算符   1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 public class jh_01_数据类型说明 {     public  ...

  6. Java中的变量,数据类型和运算符

    变量,数据类型和运算符 1.变量是一个数据存储空间的表示,它是储存数据的基本单元. 如何理解这句话,下面用一个表格可以形象的表达: 变量与房间之间的对应关系 房间名称 变量名 房间类型 变量类型 入住 ...

  7. 使用 JavaScript 中的变量、数据类型和运算符,计算出两个 number 类型的变量与一个 string 类型的变量的和,根据 string 类型处于运算符的不同位置得到不同的结果

    查看本章节 查看作业目录 需求说明: 使用 JavaScript 中的变量.数据类型和运算符,计算出两个 number 类型的变量与一个 string 类型的变量的和,根据 string 类型处于运算 ...

  8. 第四章 MySQL数据类型和运算符

    5.1 MySQL数据类型介绍 一.数据类型简介 (1) 数据表由多列字段构成,每一个字段指定了不同的数据类型,指定了数据类型之后,也就决定了向字段插入的数据内容 (2) 不同的数据类型也决定了 My ...

  9. MySQL基础之数据类型和运算符

    早些年学习MySQL的笔记,发在博客园上,以便后续回顾学习: 1. 数据类型为int(11),注意到后面的数字11,这表示的是该数据类型指定的显示宽度,指定能够显示的数值中数字的个数.其他数据类型也可 ...

  10. MySQL数据类型和运算符

    mysql支持多种数据类型,主要有下面三种: 数值数据类型 日期/时间类型 字符串类型 整数类型 不同数据类型有不同的取值范围,可存储的值的范围越大,则所需的存储空间也越大. 整数类型主要有: tin ...

随机推荐

  1. vue里的watch 和 computed 监听的不同

    1.computed里是偏向于通过监听data里的值变化后,经过运算返回一个新的计算结果, 所以k不能与data里的k重名,并且必须有return, 能够缓存,依赖的值不变化不会进行重复计算: 而wa ...

  2. django 初始命令

    1.安装django pip3 install django 2.创建一个Django对象 django-admin.py startproject 项目名称 django-admin.py star ...

  3. maven依赖和传递

    compile (编译范围) compile是默认的范围:如果没有提供一个范围,那该依赖的范围就是编译范围.编译范围依赖在所有的classpath 中可用,同时它们也会被打包. 只有compile 才 ...

  4. Linux服务器上搭建web项目环境

    一.下载并安装jdk 去官网下载linux系统上jdk的安装包jdk-8u181-linux-x64.tar.gz,在Linux的/usr目录下新建文件夹java,可以使用命令:cd /usr    ...

  5. 跑 vue 项目

    cd ***** npm install  或 yarn(推荐) npm run dev 若是报错: missing script: dev ERR! A complete log of this r ...

  6. 家庭记账本之微信小程序(二)

    在网上查阅了资料后,了解到了在完成微信小程序之前要完成注册阶段的工作,此次在这介绍注册阶段的流程. 1.首先你要确定小程序的定位.目的以及文案资料等(准备工作). 2.打开微信公众平台官网,点击右上角 ...

  7. Kaggle初学者五步入门指南,七大诀窍助你享受竞赛

    Kaggle 是一个流行的数据科学竞赛平台,已被谷歌收购,参阅<业界 | 谷歌云官方正式宣布收购数据科学社区 Kaggle>.作为一个竞赛平台,Kaggle 对于初学者来说可能有些难度.毕 ...

  8. taro初识一

    很早之前就听说京东的凹凸实验室发布的开源的一对多的开源框架---Taro,一对多指的是一套代码编译成多端代码使用,极大的节省了开发的效率和成本 废话不多说 第一步,和vue一样下载相应的是cli脚手架 ...

  9. 如何让其他电脑访问到自己的Django项目

    1.首先修改setting.py文件 ALLOWED_HOSTS = ['*'] 2.运行时使用该命令 python3 manage.py runserver 0:8000 备注:如果上* 为固定的i ...

  10. extends 与implements的区别和用法

    1. 在类的声明中,通过关键字extends来创建一个类的子类.一个类通过关键字implements声明自己使用一个或者多个接口. extends 是继承某个类, 继承之后可以使用父类的方法, 也可以 ...