我们用phpmyadmin的 *** 作来解决它:
1、
用phpmyadmin打开你的数据库,找到你的表test,打开打点击打开,处于结构状态
2、
然后选择编辑id这个字段,
3、
然后会看到这个字段里有如下属性:字段
类型
长度/值
整理
属性
Null
默认
额外
4、
我们需要设置的就在这个额外中,选择下拉列表,里面只有一个选项:auto_imcrement,这就是自动累加的意思
5、
执行保存,OK,这回你再不给id这个字段进行赋值的时候,mysql会对这个字段进行自动累加。
select a.categoryId,sort+a.n-b.num+1 from(
select ROW_NUMBER() over(order by categoryId) n,sort,categoryId from product ) a
inner join (
select categoryId,min(n) num from (
select ROW_NUMBER() over(order by categoryId) n,sort,categoryId from product )a
group by categoryId
)b on a.categoryId=b.categoryId
order by categoryId
这个使用触发器不是很合理. 网上有很多mysql模拟oracle 序列的方案, 在新增行或什么的id自增长的这类都可以使用序列. 不过现在项目都是用uuid生成的id,倒是很少使用序列了欢迎分享,转载请注明来源:内存溢出
评论列表(0条)