求同时操作几个数据表的解决方案(讨论者有分)

shyuan 2004-07-26 06:36:42
我有两个数据表,主外键关联。假设:学生表(学生姓名,学号,年龄)、课程表(学号,课程)

有一个学生参加课程的页面,学生信息遍布在页面上,课程信息放在一个课程下拉框中,包括所有课程,学生有参加的课程高亮显示。

我在更新记录时,一种做法是:

删除这个学生的参加的所有课程,重新遍历课程下拉框,添加选定的课程。这样的操作对数据库执行了大量删除和更新,性能很差。

另一种办法是比较现选择的课程和原先选择的课程,这样涉及添加,删除,更新操作。性能也很差。

大家有什么好的办法,请不宁赐教。谢谢。
...全文
114 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
shyuan 2004-07-29
  • 打赏
  • 举报
回复
我找到办法了: 比较现选择的课程和原先选择的课程,但只做更新操作,要删除的行标记为DELETE。

用存储过程传入XML参数,实现事务处理。
wangsaokui 2004-07-27
  • 打赏
  • 举报
回复
两个listbox存放参加课程和未参加课程,选的时候只是listbox中的值变化,选定后保存时才触发存储过程运行,中间过程不操作数据库
shyuan 2004-07-26
  • 打赏
  • 举报
回复
问题是这个存储过程怎么写,课程表的长度是未知的。 怎么传参数?
loneghost 2004-07-26
  • 打赏
  • 举报
回复
同意zyqqzy的说法
索引和存储过程
lupenda 2004-07-26
  • 打赏
  • 举报
回复
不用啊,你把下拉框里面的数据跟他所选的进行比较,出现在所选的就把他加亮,而不用涉及删除,更新操作
goodbegin 2004-07-26
  • 打赏
  • 举报
回复
不清楚DataAdapter的Update是怎么实现的,效果不知道如何?你可以考虑用这个方法来更新数据库。
zyqqzy 2004-07-26
  • 打赏
  • 举报
回复
1、对表建立索引
2、更新采用存储过程,不要直接使用sql字符串

62,047

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

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