考虑到效率问题,最好的办法是:在code创建索引,查询code的最大值(说白了,就是排序),然后在程序中加一 *** 作(注意数据类型转换!)
作者:赤虎链接:https://www.zhihu.com/question/22800035/answer/22685248
来源:知乎
著作权归作者所有,转载请联系作者获得授权。
解决办法:
// 数据表
CREATE TABLE qai_entity (
id CHAR(10) NOT NULL,
value INT NOT NULL DEFAULT 0,
create_time TIMESTAMP NOT NULL,
PRIMARY KEY (id)
)
将以上建表脚本改成下面这样即可。
// 数据表
CREATE TABLE qai_entity (
id CHAR(10) NOT NULL,
value INT NOT NULL DEFAULT 0,
cre_tim TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP,
PRIMARY KEY (id)
)
其原因是:
当我们在脚本中写成:cre_tim TIMESTAMP NOT NULL 时
MySql 默认添加:DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP
但当我们写成:cre_tim TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP 时
MySql 则不会帮我们添加:ON UPDATE CURRENT_TIMESTAMP 这一句了
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)