[每日更新-MySQL基础知识]6.常用数据类型-日期时间

1.    日期和时间

日期和时间类型在数据库中也非常重要,比如我们在数据库中新增了一个用户,我们就应该要存储用户加入的时间,方便以后的查询。

还有比如我们在记录日志的时候,谁操作了哪个地方,我们也需要有时间的参与,才能知道,谁在什么时候操作了什么。

1.1    日期时间

表示:datetime / date /year/time/timestamp

1.2    datetime / date / year /time

date 保存的是年月日。

datetime保存的是 年月日时分秒

year:    保存的是年份

time:    保存时分秒

可以看出 datetime更加占用空间,它占用8个字节。

1.3    timestamp时间错

占用4个字节。

范围在:1970-2038年。

1.4.    常用的保存时间的方式:

在真实的项目中,时间的保存我们通常使用一个整数类型来保存一个数字,用来表示时间戳,时间戳是从1970年1月1日0:0:0开始的以秒为单位的数字,

2.    创建数据表的示例:

创建一张用户表,需要有:用户名、昵称、手机号码、邮箱、年龄、注册时间等字段。

分析:

用户名、昵称、手机号码、邮箱都应该是字符串类型。不同的是,手机号码在中国都是11位,所以手机号码可以使用char类型。

年龄应该是一个数字类型,而且年龄应该都小于200.所以使用tinyint类型就可以满足。

注册时间用来表示一个时间,可以使用时间戳的方式。

create table if not exists `user` (
    `id` int(11) unsigned auto_increment,
    `username` varchar(15),
    `nickname` varchar(10),
    `phone` char(11),
    `age` tinyint(3),
    `create_time` int(11) unsigned,
    primary key(`id`)
)engine=innodb default charset=utf8;

3.    练习

创建公司员工的考勤表,需要创建多张表。

1.    员工表

2.    员工打卡记录表

4.    附录(类型总结)

类型     范围     说明     DEMO
tinyint     -128 - 127
unsigned:
0-255
1个字节整数     column_name tinyint(3)
smallint     -32768 - 32767
unsigned:
0-65535    
2个字节整数     column_name smallint(5)
mediumint     -8388608 - 8388607
unsigned:
0-16777215    
3个字节整数     colum_name mediumint(7)
int     -2^31 ~ 2^31 -1
unsigned:
0~2^32        
4个字节整数     column_name int(10)
bigint     -2^63 ~ 2^63 - 1
unsigned:
0 ~ 2^64
8个字节整数     col_name bigint(16)
float(M,D) -3.4E+38 ~ 3.4E+38(约) 4个字节小数    
double(M,D) -1.79E+308 ~ 1.79E+308(约) 8个字节小数
decimal(M,D) 精准的小数存储
char(N) N = 1 ~ 255 定长
varchar(N) N = 1 ~ 65535     变长(需要单独拿出1-2个字节存储真实长度)
tinytext     最大255个字符    
text     最大65535个字符
mediumtext     最大16777215个字符
longtext     最大4284967295和字符
date     日期(yyyy-mm-dd)
time     时间(hh:mm:ss)
datetime     日期时间(yyyy-mm-dd hh:mm:ss)
timestamp     yymmddhhmmss
year     年(yyyy)

原文地址:http://blog.51cto.com/toulen/2155811

时间: 2024-08-27 15:53:54

[每日更新-MySQL基础知识]6.常用数据类型-日期时间的相关文章

[每日更新-MySQL基础]-1.认识MySQL

1.数据库 程序的运行需要很多数据的支持,比如我们要在程序中计算1+2=?,那这个时候,我们就需要把数字1和2存在内存当中,甚至把它们放在变量里面,之后才能进行运算. 再比如说,咱们要设计一个程序,用来查询过去五年中每一天的天气信息,那应该怎么来设计,我们不太可能每次运行程序的时候,都让程序在网上去抓取过去5年的所有天气信息,这样耗时又耗力.这个时候我们就需要借助数据库来帮我们将过去五年的天气信息都存起来,并且按照我们需要的格式去存,等到我们要查询的时候,直接从数据库中取出来,显示给用户就可以了

[每日更新-MySQL基础]5.常用的数据类型-整数和字符串

1.    数据类型 在学习PHP的时候我们已经讲过数据类型了,所谓数据类型就是数据的格式.每一种数据类型在计算机中存储的方式会有差异,占用的存储容量也有区别,所以选择合适的数据类型可以节约我们的存储成本,也方便我们的程序运行和开发效率. 1.1    整数类型 表示:int 在PHP中,要存储一个整数类型需要4个字节,在MYSQL中,这个Int是可以手动指定的,它根据你选择的长度来计算使用的字节数.标准的整数类型也是4个字节. 在定义表的时候,如果选择了int型,那么需要设置一个长度,根据长度

MySQL 基础知识与常用命令

SQL   事务的四个特性ACID ACID,是指数据库管理系统(DBMS)在寫入/更新資料的過程中,為保證事务(transaction)是正確可靠的,所必須具備的四个特性:原子性(atomicity,或稱不可分割性).一致性(consistency).隔离性(isolation,又称独立性).持久性(durability). MySQL

[每日更新-MySQL基础]2.数据库基本操作

1.    数据库操作 在进入的数据库之后,就应该要对数据库进行管理了.管理数据库是通过SQL来完成的. SQL是用来控制.操作数据库的一个工具,是用来和数据库交流的一门语言.所以,后面我们所用到的语句都是SQL语句. 首先我们要先看看在这个数据库服务器上有哪些库. show databses; 使用命令查看有哪些数据库. 查询数据库还支持过滤,比如某些数据库不让它显示: show databases like %shuai% 它会匹配数据库名中包含shuai这几个字符的库. %:通配符,表示匹

[每日更新-MySQL基础]3.数据表擦哦走

1.    数据表操作 数据表是用来存数据的最重要的东西,它存在库里,一个库中可以有N多个表.所以创建数据表必须选择库. 1.1    创建数据表 create table <tableName>(     表的信息 )[选项]; 在没有指定数据的情况下创建表是不行的,有两种方式选择库. 1.    在写表名的时候指定:create table 库名.表名 2.    在创建表之前,使用: use 库名; 切换到指定的数据库再进行操作 注意: 创建表的时候,同样支持 if not exists

MySQL基础知识

MySQL基础知识: 一. 知识点:        1. SQL分类:按照其功能不同,分为3中类别           DDL(Data Defintion Language):数据定义语句,用于定义不同的数据段.数据库.表.列.索引等.常用的语句关键字包括create.drop.alter等;             DML(Data Manipulation Language):数据操纵语句,用于添加.删除.更新和查询数据库记录,并检查数据的完整性.常用的语句关键字主要包括insert.de

mysql基础知识之增删查改使用介绍

 mysql基础知识之增删查改使用介绍 本文主要介绍mysql常用的SELECT.INSERT.UPDATE.DELETE语句的使用,数据库的安装这里不做介绍,并且事先已经准备好相关数据. 本文中使用的student表中的数据如下: mysql> SELECT * FROM student; 一.SELECT语句的使用 1.单表查询 语法格式: SELECT culom1,culom2,culom3 FROM TABLE_NAME; 可以改变字段显示顺序 2.WHERE子句查询 语法格式: SE

php基础知识总结(4)时间函数date

一.time() -- 返回当前的 Unix 时间戳 $nextWeek = time() + (7 * 24 * 60 * 60); echo 'Next Week: '. date('Y-m-d', $nextWeek) ."\n"; 二.mktime(时/分/秒/月/天/年) -- 取得一个日期的 Unix 时间戳 echo date("M-d-Y", mktime(0, 0, 0, 12, 32, 1997));  //Jan-01-1998 echo da

Python 常用的日期时间命令

今天用到自动添加当前时间,居然把之前的知识忘了,特整理常用的日期时间命令 代码: # 获取当前时间# import time# localtime = time.localtime(time.time())# print("本地时间为:",localtime)# # 获取格式划时间# import time# localtime = time.asctime(time.localtime(time.time()))# print("本地时间为:",localtime