Я пытаюсь использовать результат первой хранимой процедуры, которая дает мне список предложений, назначенных конкретному эксперту. Из этого результата мне нужны связанные проекты этих предложений.
мой первый запрос:
ALTER proc [dbo].[sp_ExpsAssignedProp]
(
@username as varchar(50)
)
as
begin
select pro.ProposalID,pro.Title,pro.GrantAmount from tbl_Registration reg
inner join tbl_Expert exp On reg.RegID=exp.RegID
inner join tbl_Panel pan On pan.ExpertID_1=exp.ExpertID
OR pan.ExpertID_2=exp.ExpertID
OR pan.ExpertID_3=exp.ExpertID
inner join tbl_Association asso On asso.PanelID=pan.PanelID
inner join tbl_Proposal pro On asso.ProposalID=pro.ProposalID
where reg.Username=@username
end
теперь я пытаюсь использовать его результат для второго запроса, но он дает мне все проекты со статусом завершенных. Меня беспокоит получение проектов назначенных предложений со статусом завершенных.
alter proc [dbo].sp_AssignedProj
(
@username as varchar(50),
@status as varchar(50)
)
as
begin
exec sp_ExpsAssignedProp
select proj.ProjectID, proj.Title, proj.Budget, proj.StartDate, proj.FinishDate, proj.CurrentStatus from
tbl_Proposal prop
inner join tbl_Project proj On prop.ProposalID=proj.ProposalID
where CurrentStatus=@status
end
sp_
для своих хранимых процедур. Microsoft зарезервировала этот префикс для собственного использования ( см. Именование хранимых процедур), и вы рискуете столкнуться с конфликтом имен в будущем. Это также плохо сказывается на производительности ваших хранимых процедур. Лучше просто избегатьsp_
и использовать в качестве префикса что-то другое - или вообще не использовать префикс! - person marc_s   schedule 07.07.2013