求助关于更新

qq_21420725 2020-11-15 07:50:49
SQLite数据库
tableA里面有
ID和name两个列
具体数据为
ID name
1 6
2 2
3 3
4 5
5 4
6 1

1.当删除id为3 这行数据好后
id 4 更新为3
id 5 更新为4
id 6 更新为5
依此类推

2.点击替换按钮则自动根据Name进行排序
同时更新ID。更新后具体数据如下
ID name
1 1
2 2
3 3
4 4
5 5
6 6

求助,解决方案

...全文
2400 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
  • 打赏
  • 举报
回复
干啥用?如果只是要展示显示的时候直接rownum那种就行了
qq_21420725 2020-11-16
  • 打赏
  • 举报
回复
统一回复哈。
引用 5 楼 datafansbj 的回复:
引用 4 楼 sooohCom 的回复:
引用 3 楼 X-i-n 的回复:
这个ID列不是主键,所以不是唯一标识。 for循环的话,数据少的时候逐条更新无所谓,怕数据多了。不过似乎只能这样了 关于数据库的设计,不是我设计的,我也没有决定权,只是客户提了需求,老板强制要求要这么弄。
引用 2 楼 真的小白啊 的回复:
看看我发现了什么,史前差不多提问 https://bbs.csdn.net/topics/380099364
谢谢,我研究一下
datafansbj 2020-11-16
  • 打赏
  • 举报
回复
你的业务需求是什么?也许你的设计存在问题,需要变更一下思路。如果你执意要这么做,那么提醒你一下,数据库不是这么操作的。
上海程序员3 2020-11-16
  • 打赏
  • 举报
回复
这种你另外再加个ID,不改动,唯一值,你这个需要更新的ID别做主键,那更新不就是一个for循环的问题么,哪里难了?
泡泡鱼_ 2020-11-16
  • 打赏
  • 举报
回复
引用 1 楼 以专业开发人员为伍 的回复:
这类设计能把有点儿编程经验的人气“死”。这样的软件会卡死,扔掉。你在现实中去回测一下流程可行性,假设每天有1万辆车的打车记录,连续一个月记录,你删除一条就要更新所有其它的记录,那么这个系统慢多少倍?
引用 7 楼 大西瓜大降价一块一斤 的回复:
干啥用?如果只是要展示显示的时候直接rownum那种就行了
引用 9 楼 亚特兰蒂斯DE 的回复:
数据小的话 直接刷一次数据就行了 如果量大 你这样设计部合理的.
+1
亚特兰蒂斯DE 2020-11-16
  • 打赏
  • 举报
回复
数据小的话 直接刷一次数据就行了 如果量大 你这样设计部合理的.
  • 打赏
  • 举报
回复
自己再加个排序列不就好了
X-i-n 2020-11-15
  • 打赏
  • 举报
回复
既然ID列的值随时能变,那这个字段设计出来的用意是什么? 一般在设计字段的时候,id会用作唯一标识,当然你不拿来用作这个用途,而是派其它用场也完全可以,只是你这个“其它用场”具体是什么,需要好好琢磨一下。
真的小白啊 2020-11-15
  • 打赏
  • 举报
回复
看看我发现了什么,史前差不多提问 https://bbs.csdn.net/topics/380099364
  • 打赏
  • 举报
回复
这类设计能把有点儿编程经验的人气“死”。这样的软件会卡死,扔掉。你在现实中去回测一下流程可行性,假设每天有1万辆车的打车记录,连续一个月记录,你删除一条就要更新所有其它的记录,那么这个系统慢多少倍?

110,568

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧