找回密码
 立即注册

QQ登录

只需一步,快速开始

liyun654

注册会员

5

主题

17

帖子

150

积分

注册会员

积分
150
最新发帖
liyun654
注册会员   /  发表于:2020-10-5 17:21  /   查看:3053  /  回复:9
10金币
为了3F规则,我们经常是多表关联成一个视图,让客户使用,但图一告诉我们视图基本上是不能多表更新的,这个实际中的数据库规则一致!!!那基表如何更新修改的的内容呢。比如 有三张基表,1:学生ID,学生名称,2:学生ID,成绩,3:学生ID,备注的,组成一个视图。当我修改了成绩和备注的时候,基表怎么进行更新,他们有关联的唯一学生ID字段,但不知道哪种方式最合适,最好不要繁琐。图一:


附件: 您需要 登录 才可以下载或查看,没有帐号?立即注册

最佳答案

查看完整内容

开启事务,更新表,不建议更新视图

9 个回复

倒序浏览
最佳答案
最佳答案
VVANVI悬赏达人认证
论坛元老   /  发表于:2020-10-5 17:21:27
来自 4#
liyun654 发表于 2020-10-5 22:16
那个我试过,好像只能更新一条,当前焦点条,比如我有10条,2,5,7,9行进行了更新,我想一次就把这四条的 ...

开启事务,更新表,不建议更新视图
回复 使用道具 举报
xiaoz悬赏达人认证 活字格认证
银牌会员   /  发表于:2020-10-5 20:25:03
2#
用数据表操作命令高级选项里面的特定行id等于当前id,姓名 成绩 备注 都更新,3个数据表操作命令更新3个不同的表。
回复 使用道具 举报
liyun654
注册会员   /  发表于:2020-10-5 22:16:18
3#
xiaoz 发表于 2020-10-5 20:25
用数据表操作命令高级选项里面的特定行id等于当前id,姓名 成绩 备注 都更新,3个数据表操作命令更新3个不 ...

那个我试过,好像只能更新一条,当前焦点条,比如我有10条,2,5,7,9行进行了更新,我想一次就把这四条的变化更新上去
回复 使用道具 举报
liyun654
注册会员   /  发表于:2020-10-6 09:06:06
5#
VVANVI 发表于 2020-10-6 00:48
开启事务,更新表,不建议更新视图

很多情况下,都需要多表查询出来的的类试视图的结果集,开启事务只能保证,要么全部成功,要么全部不成功,而我是想更新基表,一次性更新完
回复 使用道具 举报
VVANVI悬赏达人认证
论坛元老   /  发表于:2020-10-6 12:21:49
6#
liyun654 发表于 2020-10-6 09:06
很多情况下,都需要多表查询出来的的类试视图的结果集,开启事务只能保证,要么全部成功,要么全部不成功 ...

开事务可以同时更新多张基础数据表
回复 使用道具 举报
xiaoz悬赏达人认证 活字格认证
银牌会员   /  发表于:2020-10-6 21:47:22
7#
liyun654 发表于 2020-10-5 22:16
那个我试过,好像只能更新一条,当前焦点条,比如我有10条,2,5,7,9行进行了更新,我想一次就把这四条的 ...

视图、关联列是不能在表格上进行改的,感觉只能改当前行,我技穷了,看看有别的大佬能搞定不
回复 使用道具 举报
Eric.Liang讲师达人认证 悬赏达人认证 活字格认证
超级版主   /  发表于:2020-10-9 12:01:51
8#
针对你说的这个直接在数据库中设置级联更新是不是就可以,只要基表的学生ID发生了变化,关联的表自动修改对应的关联学生ID是不是最方便~
回复 使用道具 举报
liyun654
注册会员   /  发表于:2020-10-9 14:32:12
9#
Eric.Liang 发表于 2020-10-9 12:01
针对你说的这个直接在数据库中设置级联更新是不是就可以,只要基表的学生ID发生了变化,关联的表自动修改对 ...

学的还不是很深入,我先研究下,我的目前找到的办法是循环数据表操作基表进行关联,但性能我感觉有点慢,每秒30来条左右,级联还没研究过,不知道是不是很数据库里面的外键概念很像,但这个有时候关系链非常复杂,希望用简单的办法去操作,越简洁越有效
回复 使用道具 举报
Erik.Xue讲师达人认证 悬赏达人认证 活字格认证 Wyn认证
超级版主   /  发表于:2020-10-9 17:40:06
10#
级联和外键是有很大区别的,具体可以参考:

https://blog.csdn.net/weixin_42204641/article/details/81282169
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 立即注册
返回顶部