oracle视图做定时调度主键设置问题

oracle视图做定时调度,每天删了表抽一次视图数据,但是视图里面没有主键,有几行数据完全一样,这种填报属性主键怎么设置

FineReport 冰雨咖啡 发布于 2022-10-11 18:58
1min目标场景问卷 立即参与
回答问题
悬赏:3 F币 + 添加悬赏
提示:增加悬赏、完善问题、追问等操作,可使您的问题被置顶,并向所有关注者发送通知
共2回答
最佳回答
0
snrtuemcLv8专家互助
发布于2022-10-12 09:06

记得填报不能插入视图中啊,你用视图怎么做填报。。。

如果你是根据视图查询出数据,填报到其他表,那就做视图时候,把需要填报的不得主键一起查询出,然后用这个做主键,反正视图加一个字段还是很简单的,

  • 冰雨咖啡 冰雨咖啡(提问者) 先select * from 视图,要导入的表加一列主键uuid,然后做删除提交和插入提交,但是如果视图有数据删除,导入的表做删除提交的时候好像不会把视图没有的数据删掉,是不是必须视图有一个字段是唯一标识的,目前视图没有唯一标识字段
    2022-10-12 09:19 
  • snrtuemc snrtuemc 回复 冰雨咖啡(提问者) 针对视图你是没法做删除更新插入操作,只能是对应的表,所以需要取出对应表的主键,对视图引用表进行操作
    2022-10-12 09:21 
  • 冰雨咖啡 冰雨咖啡(提问者) 回复 snrtuemc 不是对视图增删改,是对视图查出的数据填报到另一张数据表里面,那张表的字段与视图的字段一样
    2022-10-12 09:27 
  • snrtuemc snrtuemc 回复 冰雨咖啡(提问者) 那就你要把这张表的主键查询出来,不然没法做更新删除操作,只能插入,插入不需要主键
    2022-10-12 09:29 
  • 冰雨咖啡 冰雨咖啡(提问者) 回复 snrtuemc 是不是得做两个填报,一个填报用来删除新表的数据,另一个填报用来插入视图的数据到新表,做两个定时调度,先执行删除的填报,再执行插入的填报
    2022-10-12 09:33 
最佳回答
0
用户S5182147Lv6中级互助
发布于2022-10-12 09:02

多加一列uuid列吧,用uuid列做主键

  • 3关注人数
  • 404浏览人数
  • 最后回答于:2022-10-12 09:06
    请选择关闭问题的原因
    确定 取消
    返回顶部