MySQL怎么样让自动增加的id字段从0开始计数啊
有时候我们在测试网站的时候,删除测试数据导致id不是从0开始,那如果想id是从0开始怎么办呢?
mysql默认自增ID是从1开始了,但当我们如果有插入表或使用delete删除id之后ID就会不会从1开始了.
使用mysql时,通常表中会有一个自增的id字段,但当我们想将表中的数据清空重新添加数据时,希望id重新从1开始计数,用以下两种方法均可.
通常的设置自增字段的方法,创建表格时添加:
create table table1(id int auto_increment primary key,…)
创建表格后添加:
alter table table1 add id int auto_increment primary key 自增字段,一定要设置为primary key.
例子,代码如下:
alter table tablename drop column id;
alter table tablename add id mediumint(8) not null primary key auto_increment first;//phpfensi.com方法二:alter table tablename auto_increment=0
1. 可以实现自动从0开始计数。
2. MySQL有一个叫做AUTO_INCREMENT的属性,该属性默认从1开始计数。
我们可以通过修改该属性的值,来实现自动增加的id字段从0开始计数的需求。
3. 具体操作为,先将该id字段的AUTO_INCREMENT属性值设置为0,然后先插入一条带有该id字段的数据,此时id字段的值就会自动变成0,之后再将AUTO_INCREMENT属性设置为1即可。
淘宝签到领金币连续领到第六天,说是30个,怎么变成了5个
以淘宝网领取淘金币的签到系统为例:
目标:第一天签到增加5个积分;第二天连续签到则增加8个积分;第三天连续签到,增加11个积分,第四天连续签到,增加15个积分;第五天连续签到,增加19个积分;第六天连续签到,增加24个积分;第七天连续签到,增加29个积分;第八天以后的连续签到,都增加29个积分。连续签到断开,则积分从第一天开始计算。思路:这个比较简单,思路是这样的:在用户表里添加一个连续登录的字段,如果每天连续登录自增1,如果超过24小时的话就直接归0.再增加一个最后登录的时间,格式是时间戳的。首先判断最后登录的时间和现在的时间的时间差值是多少,函数如下:<
?phpfunction checkTime() { if (time() - 最后登录时间 > 24*60*60 ) { // 判断时间是否大于24小时 // 让字段归0 }}?>这个样子就可以了。至于加分就简单了。如果字段值为:1就加5,2就加8,3就加11,4就加15,5就加19,6就加24,大于7就加29