Für SQL Server 2005 lesen Sie Erland Sommarskogs exzellenten Artikel über Arrays und Listen in SQL Server 2005, der einige Techniken zeigt, wie man mit Listen und Arrays in SQL Server 2005 umgeht (er hat auch einen anderen Artikel für SQL Server 2000).
Wenn Sie auf SQL Server 2008 aktualisieren könnten, können Sie die neue Funktion namens „Tabellenwertparameter“ verwenden:
Erstellen Sie zunächst einen benutzerdefinierten Tabellentyp
CREATE TYPE dbo.MyUserIDs AS TABLE (UserID INT NOT NULL)
Zweitens verwenden Sie diesen Tabellentyp in Ihrer gespeicherten Prozedur als Parameter:
CREATE PROC proc_GetUsers @UserIDTable MyUserIDs READONLY
AS
SELECT * FROM dbo.Users
WHERE userid IN (SELECT UserID FROM @UserIDTable)
Einzelheiten finden Sie hier.
Markus