SqlServer存储过程输出参数
if exists(select 1 from sysobjects where name='P_PreOrderInfo')
drop Procedure P_PreOrderInfo
go
Create Procedure P_PreOrderInfo
@RefSheetID varchar(64),
@OutShopID varchar(64),
@CustomID varchar(64),
@InShopID varchar(64),
@Operator varchar(64),
@Name varchar(64),
@Tax varchar(64),
@CertType varchar(64) ,
@CertNo varchar(64) ,
@Mobile varchar(64),
@LinkMan varchar(64),
@LinkTele varchar(64),
@Address varchar(64),
@Notes varchar(64),
@GoodsID varchar(2000),
@BarCodeID varchar(2000),
@CustomPrice varchar(2000),
@PKNum varchar(2000),
@PKName varchar(2000),
@PKSpec varchar(2000)
-- ,@a varchar(8000) out
WITH ENCRYPTION
AS BEGIN
declare @SheetID char(16);
--select @OutShopID=RationShopID,@CustomID=CustomerID from shop where ID=@ShopID
select @SheetID=max(SheetID) from PreCustomerOrder0 where left(sheetID,8)=CONVERT(varchar(100), GETDATE(), 112)
if @SheetID is null
begin
set @SheetID=CONVERT(varchar(100), GETDATE(), 112)+'00000001'
end
else
begin
set @SheetID=substring(@SheetID,1,8)+ right('0000000'+convert(varchar(8),convert(int,substring(@SheetID,9,8))+1),8)
end
declare @sql varchar(2000)
set @sql='Insert Into PreCustomerOrder0( SheetID,RefSheetID,OutShopID,CustomID,InShopID,PurDate,Editor,EditDate,Operator,'+
'Notes ,[Address],Mobile,LinkTele,LinkMan,CertType,CertNo,Tax,CertName) values('''+
@SheetID+''','''+@RefSheetID+''','''+@OutShopID+''','+@CustomID+','''+@InShopID+''',getdate(),'''+@Operator+''',getdate(),'''+@Operator
+''','''+
@Notes+''','''+@Address+''','''+@Mobile+''','''+@LinkTele+''','''+@LinkMan+''','''+@CertType+''','''+
@CertNo+''','''+@Tax+''','''+@Name+''');';
declare @tempGoodsID varchar(100)
declare @tempBarCodeID varchar(100)
declare @tempCustomPrice varchar(100)
declare @tempPKNum varchar(100)
declare @tempPKName varchar(100)
declare @tempPKSpec varchar(100)
declare @sql2 varchar(8000)
set @sql2='';
while charindex(',',@GoodsID)>0
begin
set @tempGoodsID=substring(@GoodsID,1,charindex(',',@GoodsID)-1);
set @GoodsID=substring(@GoodsID, charindex(',',@GoodsID)+1, len(@GoodsID)-charindex(',',@GoodsID) );
set @tempBarCodeID=substring(@BarCodeID,1,charindex(',',@BarCodeID)-1);
set @BarCodeID=substring(@BarCodeID,charindex(',',@BarCodeID)+1,len(@BarCodeID)-charindex(',',@BarCodeID));
set @tempCustomPrice=substring(@CustomPrice,1,charindex(',',@CustomPrice)-1);
set @CustomPrice=substring(@CustomPrice,charindex(',',@CustomPrice)+1,len(@CustomPrice)-charindex(',',@CustomPrice));
set @tempPKNum=substring(@PKNum,1,charindex(',',@PKNum)-1);
set @PKNum=substring(@PKNum,charindex(',',@PKNum)+1,len(@PKNum)-charindex(',',@PKNum));
set @tempPKName=substring(@PKName,1,charindex(',',@PKName)-1);
set @PKName=substring(@PKName,charindex(',',@PKName)+1,len(@PKName)-charindex(',',@PKName));
set @tempPKSpec=substring(@PKSpec,1,charindex(',',@PKSpec)-1);
set @PKSpec=substring(@PKSpec,charindex(',',@PKSpec)+1,len(@PKSpec)-charindex(',',@PKSpec));
set @sql2=@sql2+'Insert Into PreCustomerOrderItem0( SheetID,GoodsID,BarCodeID,CustomPrice,PKNum,PKName ,PKSpec) values('''+
@SheetID+''','''+@tempGoodsID+''','''+@tempBarCodeID+''','+@tempCustomPrice+','+@tempPKNum+','''+@tempPKName+''','''+@tempPKSpec+''');';
end
--select @a= @sql+@sql2
exec(@sql+@sql2)
end
go
declare @b varchar(8000);
Exec P_PreOrderInfo N'P113201605180006','-1','-1','020L06','1','1','2', '0','3','4','1',
'5','56','7','10140102,','6914032100010,','158.00,', '1,','F,','1*1,',@b out
select @b
SqlServer存储过程输出参数的更多相关文章
- sqlserver 带输出参数的存储过程的创建与执行
创建 use StudentManager go if exists(select * from sysobjects where name='usp_ScoreQuery4') drop proce ...
- Oracle存储过程 输出参数赋值异常:“Oracle.DataAccess.Types.OracleString”的类型初始值设定项引发异常。
场景: 写了一个有返回参数的存储过程,在个另开发人员机器上都正常.其它机器报如题错误.让人郁闷的是,所有调用方都是客户端,根本不存在网上众贴所说的版本不一致问题. 分析: 虽然网上的帖子没有根本解决问 ...
- C# - 企业框架下的存储过程输出参数
output 输出参数 在C# 中的获取方法 新建存储过程 create proc Test @ID int, @maxnum int output as begin declare @num int ...
- asp.net 存储过程 输出参数 取不到值
这是MSDN上的明确解释:当您将 Command 对象用于存储过程时,可以将 Command 对象的 CommandType 属性设置为 StoredProcedure.当 CommandType 为 ...
- sql 存储过程 输出参数 输入参数
1.简单的存储过程 create procedure porc_name as select * from 表 go 调用时: exec proc_name 2. 带参数的存储过程 create pr ...
- sqlserver 带输出参数的存储过程
--创建存储过程create procedure proc_stu@sname varchar(20),@pwd varchar(50),@flag bit outputasif exists(sel ...
- C# 调用带输入输出参数的存储过程
//调用存储过程执行类似于2//select count(*) from userinfo where username=username and pwd=pwd and grade=grade3// ...
- asp.net C#操作存储过程读取存储过程输出参数值
这段时间在做一个价格平台的项目时候,同事让我写一个存储过程.该存储过程是根据查询条件得出一组新数据,并且返回该组数据的总条数,此处的存储过程我用到了分页,其中主要知识点和难点是之前做项目的时候没有用到 ...
- SqlDataReader执行带输出参数存储过程 错误分析
在上一篇随笔:SqlDataReader读取分页数据,pageCount你是肿么了? 遇到了很让人头疼的问题:SqlDataReader执行带输出参数的存储过程总是获取不到输出参数的正确值.这里将解决 ...
随机推荐
- Oracle数据类型与.NET中的对应关系
Oracle连接添加的引用不同,会存在数据类型不同以及其他一些差别,就工作中遇到的问题暂时总结下. 两种不同的添加引用语句: (1)System.Data.OracleClient; (2)Oracl ...
- Hi3518EV200音频相关
1.sample程序可以录音,音频格式为G711A.G711U.G726.ADPCM: 2.ADPCM找不到音频播放器 3.G711格式海思添加了4字节头0x00 0x01 0x0a 0x00,普通播 ...
- oracle之 AWR固定基线
前言:可以创建AWR基线来为数据库建立已保存的工作负载视图,以便以后用来与其他AWR快照进行比较. 1. 手工创建 AWR 固定基线(固定基线如果没有设置过期时间,会永久保存) -- 根据时间创建DB ...
- taro 组件的外部样式和全局样式
自定义组件对应的样式文件,只对该组件内的节点生效. 编写组件样式时,需要注意以下几点: 组件和引用组件的页面不能使用 id 选择器(#a).属性选择器([a])和标签名选择器,请改用 class 选择 ...
- KNN手写实践:Python基于数据集整体计算以及排序
1. 距离计算,不要通过遍历每个样本来计算和指定样本距离,而是通过对于指定样本进行广播(复制)成为一个shape和全局一致后,再进行整体计算,这里的广播 / 复制采用的是tile函数来实现的: 2. ...
- hdu 1693 Eat the Trees——插头DP
题目:http://acm.hdu.edu.cn/showproblem.php?pid=1693 第一道插头 DP ! 直接用二进制数表示状态即可. #include<cstdio> # ...
- Hive介绍和Hive环境搭建
一.Hive介绍 Hive包含用户接口.元数据库.解析器和数据仓库等组件组成,其中用户接口包含shell客户端.JDBC.ODBC.Web接口等.元数据库主要是指定义在hive中的表结构信息,一般保存 ...
- RedHat7局域网下安装离线Ambari
1 Ambari介绍.安装与应用案例介绍 1.1 Ambari Ambari 跟 Hadoop 等开源软件一样,也是 Apache Software Foundation 中的一个项目,并且是顶级项目 ...
- thinkPHP 3.2.3操作MongoDB指南
今天使用thinkPHP操作MongoDB发现跟用MYSQL有很多不同的地方,在这里特别跟大家分享下. 暂时没用thinkPHP5一直还在用thinkPHP3.2.3觉得挺好用,MongoDB版本2和 ...
- ML平台_饿了么实践
(转载至:https://zhuanlan.zhihu.com/p/28592540) 说到机器学习.大数据,大家听到的是 Hadoop 和 Spark 居多,它们跟 TensorFlow 是一个什么 ...