关于VC MFC 用ODBC 执行sql server 2000存储过程 怎么返回 存储过程中定义的一个变量值 到 VC MFC中?

请问一下我在MFC中使用ODBC调用了sqlserver2000的一个存储过程如存储过程CREATEprocproc_xt_crkd@cs_crkflint,@cs_cr... 请问一下 我在MFC中 使用ODBC 调用了 sql server 2000 的一个存储过程
如 存储过程

CREATE proc proc_xt_crkd
@cs_crkfl int,
@cs_crkfs int,
@cs_kf int,
@cs_dydw int,
@cs_czy int,
--@out_cs_djh int output
as
declare @sum numeric(12) --用来获得当天出入库的数量
declare @djh_l varchar(12) --根据当天日期,用来保存用当天日期做单据号左边
declare @djh numeric(12) --用来插入记录时,正确格式的单据号 如 201406090001

set @djh_l=convert(varchar(12),getdate(),112) -- 获得当前日期20140609格式
set @djh= cast(@djh_l+'0000' as numeric(12)) -- 获得的当前日期 20140609格式后 加0000零 再转换成numeric(12)格式

begin
select @sum=count(*) from xt_crkd
where crkdj like (convert(varchar(12),getdate(),112)+'%') -- 统计xt_crkd 当天的 入出库单据有多少条
end

if(@sum=0)
begin
set @sum=@sum+1
set @djh=@djh+@sum -- 保证 第一次录入单据 单据号是从 如格式 201406090001 开始的
insert into xt_crkd(crkdj,crkfl,crkfs,kf,dydw,crksj,czy)
values(@djh,@cs_crkfl,@cs_crkfs,@cs_kf,@cs_dydw,default,@cs_czy)
-- set @out_cs_djh=@djh;
end
else
begin
set @djh=@djh+@sum+1 --保证 对xt_crkd表的 录入时, crkdj字段 的值 是根据 当前表中的单据数量 +1
insert into xt_crkd(crkdj,crkfl,crkfs,kf,dydw,crksj,czy)
values(@djh,@cs_crkfl,@cs_crkfs,@cs_kf,@cs_dydw,default,@cs_czy)
-- set @out_cs_djh=@djh
end
GO

在VC中 调用了 proc_xt_crkd 存储过程
CString Stored_Proc_Sql;
Stored_Proc_Sql.Format("proc_xt_crkd '%s','%s','%s','%s','%s'",rkdlr_crkfl,rkdlr_crkfs,rkdlr_kf,rkdlr_gyssx,CCrkd_rkdlr_czy);
cdb.ExecuteSQL(Stored_Proc_Sql);

我要怎么 在VC中 获得 存储过程中的@djh 变量呢?
展开
 我来答
高中数学知识课堂
2014-06-19 · 超过131用户采纳过TA的回答
知道小有建树答主
回答量:251
采纳率:0%
帮助的人:177万
展开全部
CRecordset类中有个GetFieldValue函数,这个可以暂存陆哗数据库中的一条记录,你读一个,复制一下在输出,然后在movenext读取下一个记录。悔团。
(我最近有个和你类似的项碧悉橘目,我也是新手。只懂这么多啦)
匿名用户
2014-06-16
展开全部
你来错地了
追问
哎~~ ~~
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式