在网上大题查了下这个问题,网上有的人说可以直接比较,并给出了测试用例,也有的人说不能比较,于是我自己尝试了一下,实际测试是可以的,不过,当传入DATA类型时间与DATATIME类型时间进行比较的时候,DATA类型应该默认转化成DATATIME类型时间,比如我传入一个DATA型时间为:2018/07/03,在与DATATIME类型时间比较的时候,应该变成:2018/07/03 00:00:00,然后再去比较. 以下是我进行测试时的截图: 从上到下分别是: 查看表的属性 DATETIME与DATE比…
     为所有列插入数据 通常情况下,向数据表中插入数据应包含表中所有字段,也就是为表中所有字段添加数据,为表中所有字段添加数据有以下两种方式. 1.INSERT语句中指定所有字段名 使用INSERT语句列出表的所有字段可以向表中插入数据,语法格式如下所示. INSERT INTO 表名(字段名1,字段名2,……) VALUES(值1,值2,……); 以上示例中,“字段名1,字段名2”是数据表中的字段名称,“值1,值2”是对应字段需要添加的数据,每个值的顺序.类型必须与字段名对应. 首先,创建…
在 mysql 中,我们经常用 in 来查询众多数据中是否有数据表字段中的值: 如果我们在数据表的字段中添加了很多值,然后查询某个值是否是这个字段中众多值的一个时可以用 find_in_set('数据',字段名) 语句 注:仅适用sql原生语句: $bj = Db::query("select * from think_class where find_in_set($stuid,stuid)");…
关于char,varchar与text平时没有太在意,一般来说,可能现在大家都是用varchar.但是当要存储的内容比较大时,究竟是选择varchar还是text呢?不知道...... 于是去查阅了一些资料,顺便将这三种类型做个比较: (1)char:  char不用多说了,它是定长格式的,但是长度范围是0~255. 当你想要储存一个长度不足255的字符时,mysql会用空格来填充剩下的字符.因此在读取数据时,char类型的数据要进行处理,把后面的空格去除. (2)varchar:  关于var…
  关于char,varchar与text平时没有太在意,一般来说,可能现在大家都是用varchar.但是当要存储的内容比较大时,究竟是选择varchar还是text呢?不知道...... text . char.varchar  是数据在数据库中的存放策略问题,为了,合理应用存储空间,是数据库服务器数据类型划分的方式.对于应用程序,把它们和string对应就可以了. 于是去查阅了一些资料,顺便将这三种类型做个比较: (1)char:  char不用多说了,它是定长格式的,但是长度范围是0~25…
一.TIMESTAMP 显示格式:YYYY-MM-DD HH:MM:SS 时间范围:[ '1970-01-01 00:00:00'到'2037-12-31 23:59:59'] TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP  在创建新记录和修改现有记录的时候都对这个数据列刷新. TIMESTAMP DEFAULT CURRENT_TIMESTAMP  在创建新记录的时候把这个字段设置为当前时间,但以后修改时,不再刷…
问题描述: 在执行建表语句的时候,出现invalid default datetime value '0000-00-00 00:00:00',从字面意思看,就是不合法的默认值'0000-00-00 00:00:00',但是为什么呢?,datetime类型应该是允许这样的值出现. 排查: 这个时候我们需要执行 select @@sql_mode; 你会发现值是这样的: @@sql_mode = 'ONLY_FULL_GROUP_BY,STRICT_TRANS_TABLES,NO_ZERO_IN_…
1.显示格式的区别 Date显示格式:YYYY-MM-DD:DateTime显示格式:YYYY-MM-DD HH:mm:ss. 2.显示范围的区别 Date显示范围是1601-01-01 到 9999-01-01:DateTime显示范围是1601-01-01 00:00:00 到 9999-12-31 23:59:59. 3.应用场景的区别 当业务需求中只需要精确到天时,可以用Date这个时间格式,当业务需求中需要精确到秒时,可以用DateTime这个时间格式. 4.后台取值的区别 Date后…
DATA truncated FOR COLUMN 'description' AT ROW 1 1.错误再现 表中存在null字段 此时,修改表中某字段为主键 2.解决方法 不允许数据库中出现null字段 不允许数据库中出现null字段 不允许数据库中出现null字段 3.问题原因 这个错误,其实就是插入的数据不合法造成的, 比如:乱码,超出字段长度,非法字符等, 我这里的插入的数据超出字段长度造成的... 当时mysql 数据库中表的字段   description(描述)   VARCHA…
一.前言 java 中MySQL JDBC 封装了流式查询操作,通过设置几个参数,就可以避免一次返回数据过大导致 OOM. 二.如何使用 2.1 之前查询 public void selectData(String sqlCmd) throws SQLException { validate(sqlCmd); Connection conn = null; PreparedStatement stmt = null; ResultSet rs = null; try { conn = petad…