一个存储过程实现增删操作
创始人
2024-07-24 08:21:23
0

--存储过程的功能:对表 UBS_CAS_PriceFormBatch 进行添加、更新、删除、获取操作。
--参数说明:

 /*
  @DataAction 添加更新删除的标志位
  @ID ID
  @BatchNo ('批次号')
  @ItemClassID 分类
  @PurchaserUID 分类
  @AuditorUID 批准人
  @CheckerUID 审核者
  @PubDate 拟制时间
  @CheckDate 审核时间
  @PassDate 批准时间
  @State 表单状态
  @FormType 表单类型
  @SupplierCode 供应商代码
  @CompanyType 厂别
  @InputModelMaterial 输入成本模型的物料
  @Purchaser
  @Auditor
  @Checker
  @RejectReason
  */
  Create PROCEDURE UBS_CAS_PriceFormBatchAction
  @DataAction int,
  @ID int = 0,
  @BatchNo varchar(50),
  @ItemClassID int,
  @PurchaserUID int,
  @AuditorUID int,
  @CheckerUID int,
  @PubDate datetime,
  @CheckDate datetime,
  @PassDate datetime,
  @State int,
  @FormType int,
  @SupplierCode varchar(50),
  @CompanyType int,
  @InputModelMaterial varchar(50),
  @Purchaser varchar(50),
  @Auditor varchar(50),
  @Checker varchar(50),
  @RejectReason varchar(500)
  AS
  begin tran
  SET NOCOUNT ON
  if @DataAction=0
  begin
  insert into UBS_CAS_PriceFormBatch
  (
  [BatchNo],
  [ItemClassID],
  [PurchaserUID],
  [AuditorUID],
  [CheckerUID],
  [PubDate],
  [CheckDate],
  [PassDate],
  [State],
  [FormType],
  [SupplierCode],
  [CompanyType],
  [InputModelMaterial],
  [Purchaser],
  [Auditor],
  [Checker],
  [RejectReason]
  )
  values
  (
  @BatchNo,
  @ItemClassID,
  @PurchaserUID,
  @AuditorUID,
  @CheckerUID,
  @PubDate,
  @CheckDate,
  @PassDate,
  @State,
  @FormType,
  @SupplierCode,
  @CompanyType,
  @InputModelMaterial,
  @Purchaser,
  @Auditor,
  @Checker,
  @RejectReason
  )
  set
  @ID=scope_identity()
  end
  if @DataAction=1
  begin
  Update [UBS_CAS_PriceFormBatch] SET
  [BatchNo] = @BatchNo,
  [ItemClassID] = @ItemClassID,
  [PurchaserUID] = @PurchaserUID,
  [AuditorUID] = @AuditorUID,
  [CheckerUID] = @CheckerUID,
  [PubDate] = @PubDate,
  [CheckDate] = @CheckDate,
  [PassDate] = @PassDate,
  [State] = @State,
  [FormType] = @FormType,
  [SupplierCode] = @SupplierCode,
  [CompanyType] = @CompanyType,
  [InputModelMaterial] = @InputModelMaterial,
  [Purchaser] = @Purchaser,
  [Auditor] = @Auditor,
  [Checker] = @Checker,
  [RejectReason] = @RejectReason
  Where
  [ID] = @ID
  end
  if @DataAction=2
  begin
  delete from [UBS_CAS_PriceFormBatch] where [ID] = @ID
  end
  if @DataAction=3
  begin
  select
  [BatchNo],
  [ItemClassID],
  [PurchaserUID],
  [AuditorUID],
  [CheckerUID],
  [PubDate],
  [CheckDate],
  [PassDate],
  [State],
  [FormType],
  [SupplierCode],
  [CompanyType],
  [InputModelMaterial],
  [Purchaser],
  [Auditor],
  [Checker],
  [RejectReason],
  from [UBS_CAS_PriceFormBatch]
  where
  [ID] = @ID
  end
  if @@error<>0 goto sqlerr
  commit tran
  return
  sqlerr:
  rollback
  SET NOCOUNT OFF
  GO

上文中的内容主要是以代码的形式展现出来的,对于刚入门的初学者可能比较难理解,希望大家都能很好的掌握这些知识,为大家以后工作带来方便。

【编辑推荐】

  1. SQL Server 存储过程的分页
  2. 使用存储过程都有哪些益处
  3. 四种利用固态存储补充存储系统的方式

相关内容

热门资讯

如何允许远程连接到MySQL数... [[277004]]【51CTO.com快译】默认情况下,MySQL服务器仅侦听来自localhos...
如何利用交换机和端口设置来管理... 在网络管理中,总是有些人让管理员头疼。下面我们就将介绍一下一个网管员利用交换机以及端口设置等来进行D...
施耐德电气数据中心整体解决方案... 近日,全球能效管理专家施耐德电气正式启动大型体验活动“能效中国行——2012卡车巡展”,作为该活动的...
Windows恶意软件20年“... 在Windows的早期年代,病毒游走于系统之间,偶尔删除文件(但被删除的文件几乎都是可恢复的),并弹...
20个非常棒的扁平设计免费资源 Apple设备的平面图标PSD免费平板UI 平板UI套件24平图标Freen平板UI套件PSD径向平...
德国电信门户网站可实时显示全球... 德国电信周三推出一个门户网站,直观地实时提供其安装在全球各地的传感器网络检测到的网络攻击状况。该网站...
为啥国人偏爱 Mybatis,... 关于 SQL 和 ORM 的争论,永远都不会终止,我也一直在思考这个问题。昨天又跟群里的小伙伴进行...
《非诚勿扰》红人闫凤娇被曝厕所... 【51CTO.com 综合消息360安全专家提醒说,“闫凤娇”、“非诚勿扰”已经被黑客盯上成为了“木...