数据更新字段排序问题! 40C

表中有个顺序字段。假设有一张表有如下两个字段,原始数据为:
1,张三;
2,李四;
3,王五;
4,赵六;
如果这个时候我在前台界面将李四删除,那么对应表中的数据应变为
1,张三;
2,王五;
3,赵六;
或者我在前台界面将李四挪到了王五下面。那么对应的表中的数据应变为
1,张三;
2,王五;
3,李四;
4,赵六

我是写java后台的,我想知道这个如何实现方便,前台都应该传递什么值。业务上面会有上百条记录。并且有可能做多条删除和移动。主要是对表中该顺序字段进行修改。并不仅仅是前台显示顺序。

17个回答

你这个做成事件驱动的比较了,你和前台,定一个协议,发送的帧,大概以操作符和相关数据,然后,你后台再解析后做相关的操作就可以了。

。。。我看半天愣是没看懂你第二个的逻辑。。是不是写错了?
按理说每个表都有可以排序的字段,你可以增加一个sort,前端每次修改的时候 告诉你修改排序sort字段就行,你查询根据sort来排序就好

其实,你同时问了几个问题,我跟你整理下:
问题1:
实现删除一个条数据,在页面上显示的顺序依旧 order by id asc 排序 :
答:
1,张三;
2,李四;
3,王五;
4,赵六;
删除李四 , 数据库中拿到的数据 为:
1,张三;
3,王五;
4,赵六;

而在页面上显示为:
1,张三;
2,王五;
3,赵六;
这个就简单了, 在页面上一个现在为:

oid id name
1 1 张三
2 3 王五
3 4 赵六

oid 为一个后台自动生成序列号(java . net 或者python ,或者前端也有自动生成序列号),
id 为数据库中你存的id
name 为数据库中你存的id

问题2 :或者我在前台界面将李四挪到了王五下面。那么对应的表中的数据应变为
1,张三;
2,王五;
3,李四;
4,赵六

答:

在name 进入数据库 ,update table ser id=3 where name='李四' ,
update table ser id=3 where name='李四' ,
update table ser id=2 where name='王五' ,

我看半天愣是没看懂你第二个的逻辑。。是不是写错了?
按理说每个表都有可以排序的字段,你可以增加一个sort,前端每次修改的时候 告诉你修改排序sort字段就行,你查询根据sort来排序就好

你给查询出来的数据 加工序列号 不知道能不能解决你的问题

增加一个自增的id 然后根据id排序

刚刚是了 好像不行 你可以试着在前端写段js代码自动生成一个序列号
1.图片说明
2.图片说明
3.图片说明
4.图片说明

试试用存储过程解决呢

这个大概思路 是表中有个sort的字段,对这个排序,前端使用数组的splice 应该就能实现你要的 删除 和换位置的操作了,然后把这个数组拼好,发送到后台去解析就好了

给查询出来的数据 加工序列号 试试看

共17条数据 1 尾页
Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问
相关内容推荐