目的:为了验证一个存储过程中是否含有某个字符串,下面查找'openrowset"这字符串。
CREATE TABLE #tmp
(
database_name varchar(255)
)
insert into #tmp
exec sp_helptext down_sjzd_dsf --存储过程名
DECLARE Freespace CURSOR
FOR
SELECT database_name
FROM #tmp
OPEN Freespace
declare @strtemp varchar(255)
declare @t int
select @t=0
FETCH NEXT FROM Freespace into @strtemp
WHILE @@FETCH_STATUS=0
BEGIN
select @t=@t+charindex('openrowset',@strtemp)
FETCH NEXT FROM Freespace into @strtemp
END
CLOSE Freespace
DEALLOCATE Freespace
DROP TABLE #tmp
select @t --显示字符串数量,没有为0,否则为其它
go查询分析器的结果是正常的,可用VC+ado实现确产生错误。在查询分析器中显示为记录0(网格页,值正确),
消息页为
(所影响的行数为 3 行) --insert into #tmp 时产生的
(所影响的行数为 1 行) --select @t 时产生用Ado连接对象直接执行上面脚本,返回recordset记录集,可未能取到数据,
m_pRecord=m_pConnth->Execute((LPCSTR)strtemp,&RecordsAffected,adCmdText);
其中recordsaffected 为3,有什么办法取到 select @t产生的数据?或者有什么好的办法达到类似的目的。
CREATE TABLE #tmp
(
database_name varchar(255)
)
insert into #tmp
exec sp_helptext down_sjzd_dsf --存储过程名
DECLARE Freespace CURSOR
FOR
SELECT database_name
FROM #tmp
OPEN Freespace
declare @strtemp varchar(255)
declare @t int
select @t=0
FETCH NEXT FROM Freespace into @strtemp
WHILE @@FETCH_STATUS=0
BEGIN
select @t=@t+charindex('openrowset',@strtemp)
FETCH NEXT FROM Freespace into @strtemp
END
CLOSE Freespace
DEALLOCATE Freespace
DROP TABLE #tmp
select @t --显示字符串数量,没有为0,否则为其它
go查询分析器的结果是正常的,可用VC+ado实现确产生错误。在查询分析器中显示为记录0(网格页,值正确),
消息页为
(所影响的行数为 3 行) --insert into #tmp 时产生的
(所影响的行数为 1 行) --select @t 时产生用Ado连接对象直接执行上面脚本,返回recordset记录集,可未能取到数据,
m_pRecord=m_pConnth->Execute((LPCSTR)strtemp,&RecordsAffected,adCmdText);
其中recordsaffected 为3,有什么办法取到 select @t产生的数据?或者有什么好的办法达到类似的目的。
解决方案 »
- 类似 Vista/Win7 的系统工具栏如何创建?
- 命令行输出操作,该怎么实现啊,前辈们?
- 为三件事,散二十分,庆祝一下.
- 寻找兼职,本人熟悉VC应用程序开发,WINCE的应用程序开发(使用EVC),包括PPC和smartphone,熟悉WINCE的驱动开发。
- 把Excel文件当作数据库来访问
- TrueType汉字字库中的笔划是怎么存放的?-------在线等候!
- 为什么我的combo box在运行时无法下拉?
- 请高手们帮忙,我用activex控件,如果不用vc的向导注册控件,而只是将这个控件的.h和.cpp文件加进去,那么,在程序中应该怎样创建实例,并且使用
- ??? BHO 分段下载后显示网页 ???
- 大家都说程序员是吃青春饭的,我不知道30以后会怎么样,你知道吗.........
- Access+ODBC的问题
- 各位大侠,救救小弟,写了下面这段邮件群发后,邮件发到50多封,程序就down掉了,问题不明!!100分求救!!!
测试RecordsAffected是否为0。如果为0那你就不要继续。
从记录中取某个字段值是使用序号不要使用字段名
因为返回了两次记录集,实际只能获取第一次的记录集,
加上set nocount on ...脚本.....set nocount off select @t go
这样返回最后的记录集了,insert产生的记录集就不返回了.