【发布时间】:2026-02-16 16:30:01
【问题描述】:
我有 2 个 sproc 用于分配,我想要做的是将 xml 输出从一个 sproc 传递到另一个并将其放入变量中,我知道 ex1.xml_sp1 在使用 @987654321 调用它时返回一个 int @ 很明显,当尝试选择它时,它会返回 null,因为 @x 是 xml 数据类型。
我想要做的是从 sproc 1 中检索 xml 数据并将其存储到 sproc 2 中的@x。
有什么办法吗?
sproc 1:
ALTER PROC [ex1].[xml_sp1]
@careteamid int
as
select CareTeams.CareTeamID, Doctors.DoctorID, Doctors.DoctorName,
CareTeamDoctors.DateJoined, CareTeamDoctors.CurrentMember
from dbo.CareTeamTbl as CareTeams
inner join dbo.CareTeamDoctorTbl as CareTeamDoctors on
CareTeams.CareTeamID = CareTeamDoctors.CareTeamID
inner join dbo.DoctorTbl as Doctors on
CareTeamDoctors.DoctorID=CareTeamDoctors.DoctorID
where CareTeamDoctors.CareTeamID = @careteamid
and CareTeamDoctors.DoctorID = Doctors.DoctorID
for xml auto, root('thedata')
存储过程 2:
ALTER PROC [ex1].[xml_sp2]
@careteamid int
as
declare @x xml
exec @x = ex1.xml_sp1
@careteamid = @careteamid
select @x as XMLData
【问题讨论】:
标签: sql sql-server xml sql-server-2008 tsql