ALTER PROCEDURE [dbo].[Purchase_Create]
@Docid varchar(100),    ----  搜索唯一编号
@Title varchar(100),    ----  求购标题
@Province varchar(20),  ----  来自区域省
@City varchar(50),      ----  来自区域市
@Area varchar(50),      ----  来自区域
@Address varchar(200),  ----  交货详细地点
@CompanyID int,         ----  发布公司ID
@IssueDate datetime,    ----  发布时间
@Period int,            ----  有效期
@limitDate datetime,    ----  到期时间
@CateID int,            ----  品类ID
@ExpectLowPrice decimal(18,2),----  期望最低价格
@Exigence tinyint,            ----  紧急求购
@RelationName varchar(50),    ----  联系人姓名
@RelationSex bit,             ----  联系人性别
@RelationTele varchar(20),    ----  联系人电话
@Contents varchar(4000),      ----  采购数量
@Amounts int,                 ----  采购数量
@IsTop bit,                   ----  是否置顶
@MoID int,                    ----  置顶栏目ID
@MobilePhone varchar(50),     ----  移动电话
@Fax varchar(50),             ----  传真
@Email varchar(100),          ----  电子邮件
@Author varchar(50),          ----  发布者
@Company varchar(100),        ----  公司名称
@Details varchar(4000)        ----  详细信息
 
AS
BEGIN
 
   BEGIN Transaction
   
 INSERT INTO [Purchase](
 [Docid],[Title],[Province],[City],[Area],[Address],[CompanyID],[IssueDate],[Period],[limitDate],[CateID],[ExpectLowPrice],[Exigence],[RelationName],[RelationSex],[RelationTele],[Contents],[Amounts],[IsTop],[MoID],[MobilePhone],[Fax],[Email],[Author],[Company],[Details]
 )VALUES(
 @Docid,@Title,@Province,@City,@Area,@Address,@CompanyID,@IssueDate,@Period,@limitDate,@CateID,@ExpectLowPrice,@Exigence,@RelationName,@RelationSex,@RelationTele,@Contents,@Amounts,@IsTop,@MoID,@MobilePhone,@Fax,@Email,@Author,@Company,@Details
 );
 
  if not exists(select Docid from PurchaseDetails where Docid=@Docid
  BEGIN
       insert into  PurchaseDetails(Docid,Details) values(@Docid,@Details) 
  END
  ELSE
  BEGIN
           UPDATE PurchaseDetails SET Details=@Details WHERE  Docid=@Docid   
     END
 
 Commit Transaction
  IF(@@ERROR<>0)
  Rollback Transaction

END

GO

Sqlserver 存储过程中使用事务的更多相关文章

  1. Sqlserver 存储过程中结合事务的代码

    Sqlserver 存储过程中结合事务的代码  --方式一 if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[ ...

  2. SqlServer存储过程中使用事务,示例

    create proc pro_GetProTrans @GoodsId int, @Number int, @StockPrice money, @SupplierId int, @EmpId in ...

  3. 存储过程中使用事务,sql server 事务,sql事务

    一.存储过程中使用事务的简单语法       在存储过程中使用事务时非常重要的,使用数据可以保持数据的关联完整性,在Sql server存储过程中使用事务也很简单,用一个例子来说明它的语法格式: 代码 ...

  4. 存储过程中使用事务与try catch

    一.存储过程中使用事务的简单语法 在存储过程中使用事务时非常重要的,使用数据可以保持数据的关联完整性,在Sql server存储过程中使用事务也很简单,用一个例子来说明它的语法格式: 代码 : ) ) ...

  5. SQL中存储过程中使用事务,并且加入异常处理机制.

    --存储过程中使用事务,并且加入异常处理机制. -- ============================================= CREATE PROCEDURE [dbo].[UP_ ...

  6. 存储过程中使用事务和try catch

    一.存储过程中使用事务的简单语法 在存储过程中使用事务时非常重要的,使用数据可以保持数据的关联完整性,在Sql server存储过程中使用事务也很简单,用一个例子来说明它的语法格式: 代码 : Cre ...

  7. sql 在存储过程中使用事务(转)

    本来想自己写一下,后来发现这个写的比我理解的要好,所以直接拽过来了,链接地址:https://www.cnblogs.com/RascallySnake/archive/2010/05/17/1737 ...

  8. 【转载】Sqlserver存储过程中使用Select和Set给变量赋值

    Sqlserver存储过程是时常使用到的一个数据库对象,在存储过程中会使用到Declare来定义存储过程变量,定义的存储过程变量可以通过Set或者Select等关键字方法来进行赋值操作,使用Set对存 ...

  9. 搜索sqlserver 存储过程中的关键字

    搜索sqlserver 存储过程中的关键字 select * from sys.all_sql_modules where definition like '%SP_NAME%'

随机推荐

  1. Jira 使用手册

    Date Revision version Description author 2018-06-14 V1.0.0 Isaac Zhang 2018-06-22 V1.0.1 1,添加git提交操作 ...

  2. 个人永久性免费-Excel催化剂功能第38波-比Vlookup更好用的查找引用函数

    谈起Excel的函数,有一个函数生来自带明星光环,在表哥表姐群体中无人不知,介绍它的教程更是铺天盖地,此乃VLOOKUP函数也.今天Excel催化剂在这里冒着被火喷的风险,大胆地宣布一个比VLOOKU ...

  3. CentOS 7.2配置LAMP环境——yum版

    环境:CentOS 7.2 采用putty连接 方法:采用yum安装方法 目的:搭建Apache+MySQL+PHP环境 1.安装Apache yum install httpd //默认情况下,选择 ...

  4. 第一章jQuery基础

    一.jQuert简介 1.什么是jQuery jQuery是javaScript的程序库之一,它是javaScript对象和实用函数的封装. jQuery是继Prototype之后又一个优秀的java ...

  5. 简易数据分析 08 | Web Scraper 翻页——点击「更多按钮」翻页

    这是简易数据分析系列的第 8 篇文章. 我们在Web Scraper 翻页--控制链接批量抓取数据一文中,介绍了控制网页链接批量抓取数据的办法. 但是你在预览一些网站时,会发现随着网页的下拉,你需要点 ...

  6. 自定义SWT控件六之自定义Tab

    6.自定义tab 本章节提供的自定义tab 分为两类 tab上带删除按钮和添加按钮,可删除tab和添加tab tab不可删除和添加 6.1 不可删除tab package com.view.contr ...

  7. vue前后分离项目部署(不同端口号,nginx反向代理解决跨域问题)

    #user nobody; worker_processes 1; #error_log logs/error.log; #error_log logs/error.log notice; #erro ...

  8. 跟着大彬读源码 - Redis 8 - 对象编码之字典

    目录 1 字典的实现 2 插入算法 3 rehash 与 渐进式 rehash 总结 字典,是一种用于保存键值对的抽象数据结构.由于 C 语言没有内置字典这种数据结构,因此 Redis 构建了自己的字 ...

  9. DesignPattern系列__05开闭原则

    介绍 开闭原则是编程设计中最基本.最重要的原则. 定义:一个软件实体如类.方法和模块等,应该对扩展(提供方)开放,对修改(使用方)关闭.用抽象构建框架,用实现扩展细节. 也就是说,在需求发生新的变化时 ...

  10. 制造资源计划(Manufacturing Resource Planning,Mrp II)

        制造资源计划(Manufacturing Resource Planning,Mrp II)       概括: 以物料需求计划(MRP)为核心的企业生产管理计划系统,MRP II 是以工业工 ...