mysql
toubaokewu
这个作者很懒,什么都没留下…
展开
-
MYSQL 两个datetime类型相减
原始数据表数据:select (atime - btime) sec from 数据表;相减得到的并不是秒,特别需要注意!结果:mysql中计算两个Datetime类型的时间间隔(单位为秒),需要转换:1.跨天,月,年都无问题select (UNIX_TIMESTAMP(atime) - UNIX_TIMESTAMP转载 2017-09-21 16:22:59 · 857 阅读 · 0 评论 -
mybatis的自定义主键生成策略
再用mybatis时,在插入数据时,有时会用到他的主键回填功能,即获取数据库插入的主键值并将该值赋给pojo中的某一个主键属性今天又了解到除此之外mybatis还支持自定义主键功能,如数据库中并没有定义主键自增功能,比如现有如下需求:在插入数据时,如果表中没有记录,则主键为1,否则主键自增2,这时需用到selectkey元素进行处理,具体代码如下select if(max(原创 2017-10-13 11:09:03 · 13460 阅读 · 1 评论 -
mysql中where,limit于order by 的使用陷阱
在Mysql中我们常常用order by来进行排序,使用limit来进行分页,当需要先排序后分页时我们往往使用类似的写法select * from 表名 order by 排序字段 limt M,N。但是这种写法却隐藏着较深的使用陷阱。在排序字段有数据重复的情况下,会很容易出现排序结果与预期不一致的问题。比如现在有一张user表,表结构及数据如下:表结构表数据转载 2017-11-21 15:11:14 · 8485 阅读 · 0 评论 -
MyBatis如何防止SQL注入
SQL注入是一种代码注入技术,用于攻击数据驱动的应用,恶意的SQL语句被插入到执行的实体字段中(例如,为了转储数据库内容给攻击者)。[摘自] SQL injection - WikipediaSQL注入,大家都不陌生,是一种常见的攻击方式。攻击者在界面的表单信息或URL上输入一些奇怪的SQL片段(例如“or ‘1’=’1’”这样的语句),有可能入侵参数检验不足的应用程序。所以,在我们的转载 2018-01-17 11:10:06 · 894 阅读 · 0 评论