create table tb(
no varchar(10) not null,
status int,
primary key (no)
);
insert into tb(no,status) values ('1',0);
insert into tb(no,status) values ('2',0);
insert into tb(no,status) values ('3',0);
insert into tb(no,status) values ('4',0);
insert into tb(no,status) values ('5',0);
insert into tb(no,status) values ('6',0);
insert into tb(no,status) values ('7',0);
insert into tb(no,status) values ('8',0);
insert into tb(no,status) values ('9',0);
insert into tb(no,status) values ('10',0);
......
insert into tb(no,status) values ('10000',0);
通过java实现API,请求接口实现获取一个status=0的no,当返回此no时将status修改为1。
系统总共有10000个可用的no,如果1000个线程同时访问。
要求:基于数据库如何实现快速返回一个可用的no