1. 表名和属性名 按照 规范 应该加反引号``(就是键盘上esc键下面,"1"键左边的那一个), 否则如果字段中出现某些关键字, 会引起歧义并报错。
例如:
insert into `onlineshop_transferorder`
( from, to, relateId, total, productId, skuname, createTime, status )
values ( 8139, 8450, 395, 320.00, 1631, '', '2017-06-28 14:55:35.0', 0 ) ;
其中 "from"、"to" 、"status" 都是关键字, 执行该条语句, mysql会提醒 执行错误 # 1064
2. order by 和 limit 同时使用作翻页功能时,若 order by 字段数据有重复,则不同页数据显示会有问题。
这种问题有可能造成不同页面数据重复,也可能会是本来存在的记录未显示,引起原因目前还不清楚,
看网上的文章和 mysql 排序机制有关(待研究!)
3. is not null 和 != null
null 在mysql中 不像java那样可以用 "==" 和 "!=" 去衡量,如果在where 子句中使用了 "... != null",则mysql会返回空。此时我们只能用 ".. is not null" 去替代
4. from_unixtime(arg)
这里arg是时间戳,比如int11的形式,如果是arg是datetime的形式,那么得到的结果就是不准确的,使用时要注意!