qq_43557120 2020-04-01 16:12 采纳率: 0%
浏览 188

SQL更新触发插入另一张表时,主键问题

有表A,B,
A里面的字段

ID,nvarchar(9),主键(不是自增列)

SP,varchar(2),

F1,varchar(20),

F2,varchar(20),

F3,varchar(20),

F4,varchar(20), 编码

F5,datatime,

F6,numeric(16,2)

表B字段

ID,nvarchar(9),主键(不是自增列)

SP,varchar(2),
F1,varchar(20), 编码

F2,varchar(20),

F3,varchar(20),

F4,datatime,

F5,numeric(16,2)

表A的SP字段更新值为2时触发,检查当前更新行的F4编码是否在表B F1字段中存在,存在时更新表B,使得:

B_F2=A_F2,

B_F4=A_F5,

B_F5=A_F6,where B_F1=更新行A_F4

如果表A更新行的F4不存在表B中时,在B中插入一行,使得:

B_F2=A_F2,

B_F4=A_F5,

B_F5=A_F6,

B_F1=A_F4

这里用insert into select,但是ID列就不行了,A_ID不能直接等于B_ID,还有其他表的数据会生成到表B中。求大神。

字段类型,表都不能改。编码是字母加流水号

  • 写回答

1条回答 默认 最新

  • Charlet-Yan 2020-04-12 14:57
    关注

    主键你可以自己编写一个动态编号规则,按照其他的编号规则生成,就比如原来是ABC这种头的,换成CBA这样也行,生成不一样就不会重复

    评论

报告相同问题?

悬赏问题

  • ¥60 更换迈创SOL6M4AE卡的时候,驱动要重新装才能使用,怎么解决?
  • ¥15 让node服务器有自动加载文件的功能
  • ¥15 jmeter脚本回放有的是对的有的是错的
  • ¥15 r语言蛋白组学相关问题
  • ¥15 Python时间序列如何拟合疏系数模型
  • ¥15 求学软件的前人们指明方向🥺
  • ¥50 如何增强飞上天的树莓派的热点信号强度,以使得笔记本可以在地面实现远程桌面连接
  • ¥20 双层网络上信息-疾病传播
  • ¥50 paddlepaddle pinn
  • ¥20 idea运行测试代码报错问题