CREATE PROCEDURE lyg_getArticleClass
as
select * from tba
select * from tbb
select * from tbc
select * from tbd怎么才能只返回
select * from tbd
的结果
as
select * from tba
select * from tbb
select * from tbc
select * from tbd怎么才能只返回
select * from tbd
的结果
as
set nocount on
select * from tba
select * from tbb
select * from tbc
set nocount off
select * from tbd
go
@pid int=0
AS
declare @tmp1 table (TC_Id int,TC_PID int,TC_Name varchar(200),lev int,idpath varchar(6000))
declare @lev int
set @lev=1
insert @tmp1 select id,pid,name,1,cast(id as varchar(6000)) from article_classes where pid=0
while @@rowcount>0
begin
set @lev=@lev+1
insert @tmp1 select a.id ,a.pid,a.name,@lev,idpath+','+cast(a.id as varchar(6000)) from article_classes a,@tmp1 b where a.pid=b.tc_ID and a.ID not in (select tc_ID from @tmp1) order by paixuid
end
select * from @tmp1 order by idpath
GOasp中调用的时候怎么没返回结果呢?
set rs=conn.execute ("execute lyg_getArticleClass 0")
do while not rs.eof//执行这里的时候错误
提示
“对象关闭时不允许操作”
CREATE PROCEDURE lyg_getArticleClass
@pid int=0
AS
select * from article_tree order by idpath
GO
在ASP中执行就没有问题
set Rs=Rs.NextRecordset '取第二个记录集
set Rs=Rs.NextRecordset '取第三个记录集
set Rs=Rs.NextRecordset '取第四个记录集
set rs=conn.execute ("execute lyg_getArticleClass 0")
do while not rs.eof//执行这里的时候错误--------------------------------------------------
dim oComm,oPara
Set oComm = Server.CreateObject("ADODB.Command")
oComm.ActiveConnection = conn
oComm.CommandText = "lyg_getArticleClass"
oComm.CommandType = 4
oComm.Prepared = trueSet oPara = oComm.CreateParameter("pid",3,1)
oComm.Parameters.Append oPara
oComm(0)=0
set rs=oComm.Execute
set oPara=nothing
Set oComm = Nothingdo while not rs.eof
...
...
...
set rs=rs.nextrecordset
set rs=rs.nextrecordset
set rs=rs.nextrecordset
set rs=rs.nextrecordset
set rs=rs.nextrecordset晕,我写了5个nextrecordset才可以了。什么原因有没有好的办法直接返回记录集,不用这么多nextrecordset
把不需要返回的查询结果不显示
create procedure pro
as
begin
select * from tbd
end
算了,