在前台打开该存储过程,记录集rs始终待不开,从没遇到过这种问题,帮忙看看阿!急阿,谢了!

WTman 2003-10-31 10:35:05
CREATE PROCEDURE up_SaleCallBrowse
--===========================parameter===(1)======================================================================================================
(
@SaleCallID varchar(26) --销售回访编号

)
--===========================parameter=========================================================================================================
AS

---------------------------------------(2)-----------------------------------
declare @Sql varchar(6000),
@BuyCarQuantity smallint, --购车数量
@ClientID varchar(30),
@LinkmanTel varchar(30) --联系人电话

select @ClientID=ClientID from SaleCall where SaleCallID=@SaleCallID

select @LinkmanTel=LinkmanTel from Client where ClientID=@ClientID
---------------------------------------------------------------------------
select @BuyCarQuantity=count(LinkmanTel) from Sale left outer join Client on Client.ClientID=Sale.ClientID where Client.LinkmanTel=@LinkmanTel


--================================搜索纪录集=======(3)==============================================================================================
--搜索基本信息
--------------------搜索出SaleCall中的当前条记录
select * into ##tempSaleCall from SaleCall where SaleCallID like '%' + @SaleCallID + '%'
-------------------------------
select Atmp.CallTime,Atmp.CallID,Atmp.CurCallID,Atmp.BranchID,Atmp.Cause,@BuyCarQuantity as BuyCarQuantity,
Sale.SaleID,Sale.SalorID,Sale.SalePropertyID,Sale.PaymentID,Sale.BuyDate,Sale.Remark,
Car.CarFrameNumber,Car.CarNumber,Car.CountryCode,Car.CarTypeID,Car.Exhaust,Car.OuterColor,Car.CarKindID,Car.CaruseID,
Client.OwnerName,Client.OwnerTel,Client.LinkmanName,Client.LinkmanTel,Client.LinkmanName2,Client.LinkmanTel2
into ##tempBaseInfo
from ##tempSaleCall Atmp
left outer join Sale on Atmp.SaleID=Sale.SaleID
left outer join Client on Atmp.ClientID=Client.ClientID
left outer join Car on Atmp.CarID=Car.CarID
--------------------------
select Atmp.CallTime,Atmp.CallID,Atmp.CurCallID,Branch.BranchShortName,Atmp.Cause,Atmp.BuyCarQuantity,
Atmp.SaleID,Atmp.SalorID,Atmp.SalePropertyID,Atmp.PaymentID,Atmp.BuyDate,Atmp.Remark,
Atmp.CarFrameNumber,Atmp.CarNumber,Atmp.CountryCode,CarType.Name as CarType,Atmp.Exhaust,Atmp.OuterColor,CarKind.Name as CarKind,CarUse.Name as CarUse,
Atmp.OwnerName,Atmp.OwnerTel,Atmp.LinkmanName,Atmp.LinkmanTel,Atmp.LinkmanName2,Atmp.LinkmanTel2
from ##tempBaseInfo Atmp
left outer join Branch on Atmp.BranchID=Branch.BranchID
left outer join CarType on Atmp.CarTypeID=CarType.GlobalID
left outer join CarKind on Atmp.CarKindID=CarKind.GlobalID
left outer join CarUse on Atmp.CarUseID=CarUse.GlobalID
drop table ##tempSaleCall
drop table ##tempBaseInfo
Go
...全文
27 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
WTman 2003-11-01
  • 打赏
  • 举报
回复
感谢大力,我先试一下!不过用##全绝变量和用#局部变量的结果一样!至于SET NOCOUNT ON
我还没试过,不知道这个语句是干吗用的?
pengdali 2003-10-31
  • 打赏
  • 举报
回复
注意:SET NOCOUNT ON
WTman 2003-10-31
  • 打赏
  • 举报
回复
上述存储过程在查询分析器中用exec up_SaleCallBrowse '6'执行,搜索到一条记录,但是在前台用rs.open "up_SaleCallBrowse '6'",de.cn, adOpenDynamic, adLockReadOnly打开时,
rs的状态始终是未打开的状态,所以,程序中不能应用rs!不知道怎么回事,但是我换一个存储过程,就不会出现这种问题,所以,估计是存储过程中出了什么问题,大家帮忙看看,很急阿!
pengdali 2003-10-31
  • 打赏
  • 举报
回复
你用#临时表不行吗?##全局临时表是会出现并发问题的。试试:


CREATE PROCEDURE up_SaleCallBrowse
--===========================parameter===(1)======================================================================================================
(
@SaleCallID varchar(26) --销售回访编号

)
--===========================parameter=========================================================================================================
AS
SET NOCOUNT ON
---------------------------------------(2)-----------------------------------
declare @Sql varchar(6000),
@BuyCarQuantity smallint, --购车数量
@ClientID varchar(30),
@LinkmanTel varchar(30) --联系人电话

select @ClientID=ClientID from SaleCall where SaleCallID=@SaleCallID

select @LinkmanTel=LinkmanTel from Client where ClientID=@ClientID
---------------------------------------------------------------------------
select @BuyCarQuantity=count(LinkmanTel) from Sale left outer join Client on Client.ClientID=Sale.ClientID where Client.LinkmanTel=@LinkmanTel


--================================搜索纪录集=======(3)==============================================================================================
--搜索基本信息
--------------------搜索出SaleCall中的当前条记录
select * into #tempSaleCall from SaleCall where SaleCallID like '%' + @SaleCallID + '%'
-------------------------------
select Atmp.CallTime,Atmp.CallID,Atmp.CurCallID,Atmp.BranchID,Atmp.Cause,@BuyCarQuantity as BuyCarQuantity,
Sale.SaleID,Sale.SalorID,Sale.SalePropertyID,Sale.PaymentID,Sale.BuyDate,Sale.Remark,
Car.CarFrameNumber,Car.CarNumber,Car.CountryCode,Car.CarTypeID,Car.Exhaust,Car.OuterColor,Car.CarKindID,Car.CaruseID,
Client.OwnerName,Client.OwnerTel,Client.LinkmanName,Client.LinkmanTel,Client.LinkmanName2,Client.LinkmanTel2
into #tempBaseInfo
from #tempSaleCall Atmp
left outer join Sale on Atmp.SaleID=Sale.SaleID
left outer join Client on Atmp.ClientID=Client.ClientID
left outer join Car on Atmp.CarID=Car.CarID
--------------------------
select Atmp.CallTime,Atmp.CallID,Atmp.CurCallID,Branch.BranchShortName,Atmp.Cause,Atmp.BuyCarQuantity,
Atmp.SaleID,Atmp.SalorID,Atmp.SalePropertyID,Atmp.PaymentID,Atmp.BuyDate,Atmp.Remark,
Atmp.CarFrameNumber,Atmp.CarNumber,Atmp.CountryCode,CarType.Name as CarType,Atmp.Exhaust,Atmp.OuterColor,CarKind.Name as CarKind,CarUse.Name as CarUse,
Atmp.OwnerName,Atmp.OwnerTel,Atmp.LinkmanName,Atmp.LinkmanTel,Atmp.LinkmanName2,Atmp.LinkmanTel2
from #tempBaseInfo Atmp
left outer join Branch on Atmp.BranchID=Branch.BranchID
left outer join CarType on Atmp.CarTypeID=CarType.GlobalID
left outer join CarKind on Atmp.CarKindID=CarKind.GlobalID
left outer join CarUse on Atmp.CarUseID=CarUse.GlobalID
SET NOCOUNT OFF
Go

34,874

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
  • 基础类社区
  • 二月十六
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧