菜菜吃菜 2022-06-15 17:08 采纳率: 57.5%
浏览 19
已结题

c# 创建多表通用的存储过程



    CREATE PROCEDURE UPK @StatusID INT, @Time VARCHAR ( 50 ), @qid bigint AS UPDATE RealData20220615
    SET StatusID = @StatusID     
WHERE
    qid = @qid 
    AND Time BETWEEN CONVERT ( VARCHAR,@Time, 120 ) + '.000' 
    AND CONVERT ( VARCHAR,@Time, 120 ) + '.999'

创建存储过程,只能执行RealData20220615表的数据,在20220616表中也需要有数据执行更新,那就需要重复再次创建存储过程,想实现创建存储过程多表可以通用实现更新。

  • 写回答

2条回答 默认 最新

  • shinger126 2022-06-15 18:31
    关注

    CREATE PROCEDURE UPK
    @StatusID INT,
    @Time VARCHAR ( 50 ),
    @qid bigint,
    @tablename nvarchar(200)
    AS
    declare @sql nvarchar(max)
    declare @time1 varchar(30)=convert(varchar(10),@time,120)
    declare @time2 varchar(30)=convert(varchar(10),@time,120)+' 23:59:59.997'
    set @sql= 'UPDATE '+@tablename+'
    SET StatusID = '+left(@StatusID,10)+'
    WHERE
    qid = '+left(@qid,20)+'
    AND Time BETWEEN '''+@time2+'''
    AND '''+@time2+''''

    --print @sql 用于调试
    exec sp_executesql @sql
    go

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

问题事件

  • 系统已结题 6月24日
  • 已采纳回答 6月16日
  • 创建了问题 6月15日

悬赏问题

  • ¥15 虚幻5 UE美术毛发渲染
  • ¥15 CVRP 图论 物流运输优化
  • ¥15 Tableau online 嵌入ppt失败
  • ¥100 支付宝网页转账系统不识别账号
  • ¥15 基于单片机的靶位控制系统
  • ¥15 真我手机蓝牙传输进度消息被关闭了,怎么打开?(关键词-消息通知)
  • ¥15 装 pytorch 的时候出了好多问题,遇到这种情况怎么处理?
  • ¥20 IOS游览器某宝手机网页版自动立即购买JavaScript脚本
  • ¥15 手机接入宽带网线,如何释放宽带全部速度
  • ¥30 关于#r语言#的问题:如何对R语言中mfgarch包中构建的garch-midas模型进行样本内长期波动率预测和样本外长期波动率预测