create table userinfos(
userid int primary key,
username varchar(20)
)
//给userinfos添加序列
update userinfos set userid = last_insert_id(userid+1)
//然后查询序列
select last_insert_id()
或者也可以这样
create table userinfos(
userid int primary key not null auto_increment,
username varchar(20)
)
修改sql如下select (@xh := @xh + 1) as xh, a.* from (select * from auto where level = 3) a, (select @xh := 0) x
结果如下
mysql下序列是用关键字auto_crement,起始值及步长增长值由系统以下参数确定:mysql>show variables like '%auto_increment%'
+--------------------------+-------+
| Variable_name| Value |
+--------------------------+-------+
| auto_increment_increment | 1 |
| auto_increment_offset| 1 |
+--------------------------+-------+
2 rows in set (0.00 sec)
mysql>
其中auto_increment_offset表示起始值(且必须由1开始),参数表示auto_increment_increment表示步长增长值(只能是正整数)。
建表示例:
create table t111
(id int auto_increment primary key,
remark varchar(50)
)
由上面所说可知,你的需求在mysql下单用auto_crement是实现不了的。建议你考虑别的办法吧,或由一些变通的方式实现。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)