设计表的时候,如果时间字段没写默认值,MySQL会自己加上“根据当前时间戳自动更新”,我们要做的就是把它去掉。
写登录功能时遇到的问题,具体表现为MySQL在查询时的大小写不敏感。比如表中有 abc,Abc,ABC 三条数据。查询时输入ABC,应该只能查出1条,但是3条都查出来了。
#{}会在值的两侧加引号变成字符串,然后再进行执行SQL,因为字符串不能进行计算,所以查询会出错。而${}是直接替换值,不会加引号,在${}中的值可以进行计算。
数据库里存的格式是2021-05-25 20:40:11,mybatis查询出来的格式相同,但是在控制台中打印出来的却变成了Tue May 25 20:40:11 CST 2021。
实现登录功能、页面自动显示查询到的信息、运营账号的增删查改,多条件查询(mybatis动态查询)。
使用了MyBatis做多条件查询,其中有一个参数是astatus,当前端给的值为1时,查询结果正常。而给0时,这个查询语句就不会被拼接使用,具体请接着看。
如果是数据库时区问题,可以通过语句设置MySQL时区。如果是项目配置问题,看一下jdbc url的serverTimezone的值是否为Asia/Shanghai。
数据库中设计表的时候,有时候为了满足需求,某些字段的值是中英文与数字混合的,当需要查询这种字段并且排序时,直接使用“order by 某个字段”,得到的结果不是我们想要的,具体看例子。