数据库添加时间类型

日期类型:

datetime  年月日小时分秒  格式必须是

‘yyyy-MM-dd hh:mm:ss’

时间戳类型:

什么是时间戳,就是一个日期中,如果具备了年、月、日、小时、分、秒,就是时间戳。

把t1表的类型改为timestamp

取值范围: 1970 1 1 00:00:00 但是我们在东8区,所以我们测试时,要添加的最小的时间是”1970-1-1
08:00:01”

Date类型:  只有 年月日

Time类型:  只有 时分秒

Year类型,只能存放年:

关于日期要注意的地方:

1. 数据库里,日期加数字,得数字

2. 数据库里,数字+数字, 得数字

3. 数据库里,数字+字符串, 得数字

4. 数据库里,字符串+字符串,得数字,此时如果字符串无法变为数字就尽量变成数字;

字符串类型:

char 字符串类型 char(n) 表示该字符串最多存放n个字节。

Varchar 也是字符串类型, varchar(n) 也是表示最多存放n个字节. 这个效果,和char一样,它们总会有点区别!

Char是定长

Varchar是可变长度

比如:

char(10)类型中,如果存放1个’a’, 则是这样存放的

‘         a’ , 凑足10个字符,左边补空格

Varchar(10) 类型中,如果存放1个’a’, 则是这样存放的

‘a’ , 没有凑足10个字符,左边不用补空格

看起来varchar节省空间,char浪费空间。 经常使用varchar, char虽然浪费空间,但是存储效率高,varchar虽然节省空间,但是varchar会多余的列删掉,多了这一步,就降低效率。

当我们存放手机的时候,char(11) 最合适了!

Char(n) 其中的n最大取值为255.

Varchar(n) 其中的n最大取值为65535,但是,这个65535个字节中,有两个字节,用来存放varchar这一列本身的信息。还剩65533个,还有1个字节用来存放null值。
就剩65532.

简单一句话,varchar(n)中的n最大值为65532.

当varchar 或char,表示的最大字节已经不能满足业务需求的时候,比如,数据库里要存放一个三国演义小说,这是一个varchar(max)
char(max)能解决的吗?

所以就有这种类型: text, 2g  其实也是一种varchar,只不过是能存放的字节范围为2g的类型。

Tinytext mediumtext text longtext

枚举类型:  枚举,说到头,就知道尾,意思是值能列举完的类型.

比如: 星期。  生肖。 星座。 性别。  学历。  这些都是枚举类型。

枚举类型在mysql中是 enum.

易度(深圳)传媒有限公司

看世界 新角度

微信:EDOYOJOY

微博:http://weibo.com/EDOYOJOY

官网:http://www.edovis.com/

时间: 2024-10-01 17:05:17

数据库添加时间类型的相关文章

java中存储mysql数据库时间类型【date、time、datetime、timestamp】

在MySQL中对于时间的存储自己见表的时候都是设置的varchar类型的,感觉挺方便的. 昨天拿别人建好的表写代码,发现这张表中时间类型为datetime的,凭感觉试了一下不行,网上查了刚开始试了好几个都是不对的,一脸懵逼. -----------------------------------------------------------------------------------------------------------------------------------------

DB2数据库表示时间的类型

天王盖地虎,宝塔镇河妖,春雷一声吼,码农满街走! 这是菜鸟级码农人生的第一篇博客,来谈谈我在工作中遇到的问题:DB2数据库表示时间的类型,这是我今天在工作中遇到的一个比较2的问题, 由于我比较菜,当时没有第一时间找到问题处在哪儿,首先我先谈一谈我遇到的问题,在Dao层的实现中对DB2数据库进行数据插入的时候, 我定义的Date类型是这样的 DateFormat format = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss") 然而它进入数据库的时

数据库里面DataTime时间类型字段,如果为null时

tran.TransactionTime = bet.CreationDate.ToString() == "0001/1/1 0:00:00" ? DateTime.Now : bet.CreationDate; 数据库里面DataTime时间类型字段,如果为null时,查询出来时间值为"0001/1/1 0:00:00" 这是一个溢出SqlDateTime超出范围的时间值,将它再插入数据库时会报错的 数据库里面DataTime时间类型字段,如果为null时,布布

数据库的常用类型

参考网址:http://www.w3school.com.cn/sql/sql_datatypes.asp Microsoft Access 数据类型 数据类型 描述 存储 Text 用于文本或文本与数字的组合.最多 255 个字符.   Memo Memo 用于更大数量的文本.最多存储 65,536 个字符. 注释:无法对 memo 字段进行排序.不过它们是可搜索的.   Byte 允许 0 到 255 的数字. 1 字节 Integer 允许介于 -32,768 到 32,767 之间的数字

从零开始编写自己的C#框架(21)——添加分类类型页面

页面权限与页面控件权限经过简单的调试后,终于启用起来了,以后大家添加新页面时,就必须按照本章介绍的方法,将你新增的页面注册到系统中,这样才能访问与进行相关操作. 下面讲讲如何创建一个分类类型的页面. 分类类型,顾名思义指的是按照一定规律.特点进行归类划分,放到一块的集合.我们开发时这些分类类型,经常用下拉列表来表现,如果有多级分类时,采用的是下拉树列表方式显示. 普通下拉列表 下拉树列表 下面将介绍如何从创建数据表.修改文件到权限绑定逐个步骤进行说明. 首先,我们先要创建好数据表 我们打开数据字

Magento2开发教程 - 如何向数据库添加新表

Magento 2具有特殊的机制,允许你创建数据库表,修改现有的,甚至添加一些数据到他们(如安装数据,已被添加在模块安装). 这种机制允许这些变化可以在不同的设备之间传输. 关键的概念是,而不是做你能做的一次又一次重新安装系统时,手动SQL操作,开发人员创建一个安装(或升级)脚本包含数据. 每次安装模块时,脚本将被执行. Magento 2有四种类型的脚本:installschema,installdata,upgradeschema和upgradedata. 安装脚本只执行一次,而升级脚本每次

数据库日期时间显示在页面上格式错误的解决方案

做项目过程中肯定会碰到这样一个问题:在数据库中存的是date或datetime类型的值,从数据库里取出来遍历到页面上显示的是long类型或是GTM类型的日期时间.对于这个问题,经过研究之后有以下结论: 1.hibernate不会出现这样的问题,而mabatis则会出现这个问题. 2.数据库使用date类型的在页面上会显示long类型日期时间,使用datetime类型的在页面上会显示GTM类型日期时间. 因为我用的是mysql数据库,其他的数据库没测试过,所以也不知道其他数据库是怎样的情况,这里就

Oracle数据库以date类型保存日期时,Java中用哪个类对应数据库的date类型?

1. 使用JDBC操作Oracle数据库时,使用java.sql.Date类型对应数据库的date类型,此时只能保存和读取日期部分, 时间(时分秒)部分不能读取和保存:  查询结果集可以直接获取Date类型的数据:java.sql.Date date=resultSet.getDate("dateTime"): java.sql.Date类型的数据也可以直接保存到数据库或者与数据库中date类型的数据直接比较大小: 字符串的日期,则用SQL语句的转换函数 to_date('2017-4

MongoDB时间类型

mongdb时间类型 Date() 显示当前的时间 new Date 构建一个格林尼治时间   可以看到正好和Date()相差8小时,我们是+8时区,也就是时差相差8,所以+8小时就是系统当前时间 ISODate() 也是格林尼治时间 > Date() Sun Jan 24 2016 20:39:57 GMT+0800 (CST) > new Date() ISODate("2016-01-24T12:40:24.035Z") > ISODate() ISODate(