1
我在SQL Server 2008數據庫上有一個存儲過程。存儲過程非常簡單,只是一個SELECT語句。當我運行它時,它返回422行。但是,當我從存儲過程運行SELECT語句時,它返回467行。我已經通過在同一個SSMS窗口中同時運行存儲過程和SELECT語句來嘗試這種方式,並且行爲是相同的。存儲過程是:存儲過程和SELECT語句返回不同的結果
USE [REMS]
GO
/****** Object: StoredProcedure [mobile].[GetAllMobileDeviceUsers] Script Date: 12/04/2014 */
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
ALTER PROCEDURE [mobile].[GetAllMobileDeviceUsers]
AS
SET NOCOUNT ON
SELECT
ee.EmployeeID,
EmployeeName = LastName + ', ' + FirstName
FROM EmployeeInvData ee
--UNION
--SELECT
--m.EmployeeID,
--EmployeeName = LastName + ', ' + FirstName
--FROM mobile.MiscPersonnel m
INNER JOIN Employee e
ON ee.EmployeeID = e.EmployeeID
UNION
SELECT
'-1',
'- Select An Employee -'
ORDER BY EmployeeName
當我這樣做在同一個SSMS窗口:
exec mobile.GetAllMobileDeviceUsers
SELECT
ee.EmployeeID,
EmployeeName = LastName + ', ' + FirstName
FROM EmployeeInvData ee
--UNION
--SELECT
--m.EmployeeID,
--EmployeeName = LastName + ', ' + FirstName
--FROM mobile.MiscPersonnel m
INNER JOIN Employee e
ON ee.EmployeeID = e.EmployeeID
UNION
SELECT
'-1',
'- Select An Employee -'
ORDER BY EmployeeName
我得到兩個結果集。首先是422行;第二是467行。爲什麼?
數據庫/模式上下文?沒有任何對象名稱是合格的。 – 2014-12-04 16:54:56
戴夫,就是這樣!我們有一個mobile.Employee表和一個dbo.Employee表。請給出答案,我會upvote你。非常感謝。我們三個人正盯着這個,我們沒有看到它。 – Melanie 2014-12-04 17:01:34