0
我有我的SQL查詢的問題,我在SQL Server 2008 Express的短信中寫道,並在使用Visual Studio 2010中SQL Server 2008中的SMS與Visual Studio 2010的服務器資源管理器導致
基礎的內部:有一個在網頁上的輸入框。它用於搜索個人姓名,地址,ID等。當我在網站上使用個人姓名或在Visual Studio服務器資源管理器內部使用人名時,例如「Kargul」(製作),它贏得'使用我的存儲過程返回任何結果。 但是,在SQL Server 2008 Express SMS中,相同的存儲過程返回有效結果。
有什麼我失蹤?這裏是我的過程:
SET NOCOUNT ON;
DECLARE @vars NVARCHAR(50);
SET @vars = '%' + @searchTerm + '%';
SELECT a.PersonId, Stat.StatusId, a.Honorific, a.FirstName, a.LastName, a.Street1, a.Street2, a.City, a.State, a.Zip, a.Phone, a.Email FROM Persons AS a
JOIN dbo.PersonStatus as Stat
ON a.StatusId = Stat.StatusId
WHERE
a.FirstName LIKE (@vars)
UNION
SELECT a.PersonId, Stat.StatusId, a.Honorific, a.FirstName, a.LastName, a.Street1, a.Street2, a.City, a.State, a.Zip, a.Phone, a.Email FROM Persons AS a
JOIN dbo.PersonStatus as Stat
ON a.StatusId = Stat.StatusId
WHERE
a.LastName LIKE (@vars)
UNION
SELECT a.PersonId, Stat.StatusId, a.Honorific, a.FirstName, a.LastName, a.Street1, a.Street2, a.City, a.State, a.Zip, a.Phone, a.Email FROM Persons AS a
JOIN dbo.PersonStatus as Stat
ON a.StatusId = Stat.StatusId
WHERE
a.Street1 LIKE (@vars)
UNION
SELECT a.PersonId, Stat.StatusId, a.Honorific, a.FirstName, a.LastName, a.Street1, a.Street2, a.City, a.State, a.Zip, a.Phone, a.Email FROM Persons AS a
JOIN dbo.PersonStatus as Stat
ON a.StatusId = Stat.StatusId
WHERE
a.City LIKE (@vars)
UNION
SELECT a.PersonId, Stat.StatusId, a.Honorific, a.FirstName, a.LastName, a.Street1, a.Street2, a.City, a.State, a.Zip, a.Phone, a.Email FROM Persons AS a
JOIN dbo.PersonStatus as Stat
ON a.StatusId = Stat.StatusId
WHERE
a.PersonId LIKE (@vars)
UNION
SELECT a.PersonId, Stat.StatusId, a.Honorific, a.FirstName, a.LastName, a.Street1, a.Street2, a.City, a.State, a.Zip, a.Phone, a.Email FROM Persons AS a
JOIN dbo.PersonStatus as Stat
ON a.StatusId = Stat.StatusId
WHERE
a.State LIKE (@vars)
ORDER BY PersonId;
對不起,我有一個關於proc的SET NOCOUNT ON,我只是將它從示例中排除。我現在添加了它。另外,當我右鍵單擊VS中的Stored Proc並選擇EXECUTE,手動傳入參數時,我在OUTPUT窗口中得到0個結果。 – 2011-05-04 12:58:46