数据库设计简单地来讲,也就是设计表格的过程。

表格存储的数据是可以理解为一个二维表,由行和列组成。

原则上来讲,一个数据库只需要一个字段,一个数据类型就可以解决所有的问题,但是这样做并不明智,所以一般来讲,一个表格都是由多个字段来组成 ,每个字段也可以由不同的数据类型来组成。

常见的数据类型如下:

一、整数

  • bigint

从 -2^63 (-9223372036854775808) 到 2^63-1 (9223372036854775807) 的整型数据(所有数字)。存储大小为 8 个字节。

  • int

从 -2^31 (-2,147,483,648) 到 2^31 - 1 (2,147,483,647) 的整型数据(所有数字)。存储大小为 4 个字节。int 的 SQL-92 同义字为 integer

  • smallint

从 -2^15 (-32,768) 到 2^15 - 1 (32,767) 的整型数据。存储大小为 2 个字节。

  • tinyint

从 0 到 255 的整型数据。存储大小为 1 字节。

赋值时,如果给定的值为非整数,则会隐式转换为整数。在转换的过程中,小数位将会被舍弃;

对于整数来说,给定的值转换为整数后超出其范围,将引发溢出异常。

对于bit类型的数据来讲,如果给定的值为0或者空字符串或者空白字符串,则其值为零,其它情况其值为1。

二、非整数

 
  • decimal[(p[s])] 和 numeric[(p[s])]

定点精度和小数位数。使用最大精度时,有效值从 - 10^38 +1 到 10^38 - 1。decimal 的 SQL-92 同义词是 dec 和 dec(ps)

p(精度)

指定小数点左边和右边可以存储的十进制数字的最大个数。精度必须是从 1 到最大精度之间的值。最大精度为 38

s(小数位数)

指定小数点右边可以存储的十进制数字的最大个数。小数位数必须是从 0 到 p 之间的值。默认小数位数是 0,因而 0 <= <= p。最大存储大小基于精度而变化。

精度 存储字节数
1 - 9 5
10-19 9
20-28 13
29-38 17
  • money

货币数据值介于 -2^63 (-922,337,203,685,477.5808) 与 2^63 - 1 (+922,337,203,685,477.5807) 之间,精确到货币单位的千分之十。存储大小为 8 个字节。

  • smallmoney

货币数据值介于 -214,748.3648 与 +214.748,3647 之间,精确到货币单位的千分之十。存储大小为 4 个字节。

  • float ]

从 - 1.79E + 308 到 1.79E + 308 之间的浮点数字数据。n 为用于存储科学记数法 float 数尾数的位数,同时指示其精度和存储大小。n 必须为从 1 到 53 之间的值。

所在范围 精度 存储大小
1-24 7 位数 4 字节
25-53 15 位数 8 字节

Microsoft® SQL Server™ float[(n)] 数据类型对于从 1 到 53 之间的所有 n 值均符合 SQL-92 标准。double precision 的同义词为 float(53)

  • real

从 3.40E + 38 到 3.40E + 38 之间的浮点数字数据。存储大小为 4 字节。在 SQL Server 中,real 的同义词为 float(24)

最新文章

  1. Akka初步介绍
  2. 安卓 Handler
  3. HTTP API 设计指南(中文版) restfull
  4. 【ASP.NET】C# 将HTML中Table导出到Excel(TableToExcel)
  5. Tomcat以指定JDK运行
  6. QT全局热键(用nativeKeycode封装API,不跨平台)
  7. LeetCode Weekly Contest 47
  8. 页面性能优化和高频dom操作
  9. [欧拉路径]Play on Words UVA10129
  10. IntelliJ IDEA(七) :Project Structure
  11. 第三节基础篇—SQL的约束
  12. Fiddler--AutoResponder
  13. windows mysql 和linux mysql解决乱码问题
  14. Testing - 自动化测试的几个基础概念
  15. 谈谈MySQL支持的事务隔离级别,以及悲观锁和乐观锁的原理和应用场景?
  16. SPLAY,LCT学习笔记(四)
  17. extern &quot;C&quot; 回顾
  18. mongoDB的配置以及运行
  19. jd-gui的使用方法
  20. 译: 1. RabbitMQ Spring AMQP 之 Hello World

热门文章

  1. slick轮播图使用大全
  2. java.util.Properties的使用及读取资源文件
  3. 使用JS实现可断点续传的文件上传方案
  4. linux ubantu php composer安装
  5. ionic slide组件使用
  6. progress组件(进度条)
  7. 用 MuGo 搭建 Go Engine 在 KGS 对战
  8. leetcode 374猜数字大小
  9. HTML - form 表单提交
  10. Flask框架—flask_sqlalchemy组件使用