Megjegyzés
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhat bejelentkezni vagy módosítani a címtárat.
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhatja módosítani a címtárat.
Vonatkozik a következőkre:SQL Server
Azure SQL Database
Azure SQL Managed Instance
Azure Synapse Analytics
Analitikai Platform System (PDW)
SQL adatbázis a Microsoft Fabric-ben
A paraméterek a tárolt eljárások és függvények, valamint a tárolt eljárásnak vagy függvénynek nevezett alkalmazás vagy eszköz közötti adatcserére szolgálnak:
- A bemeneti paraméterek lehetővé teszik, hogy a hívó átadjon egy adatértéket a tárolt eljárásnak vagy függvénynek.
- A kimeneti paraméterek lehetővé teszik, hogy a tárolt eljárás visszaadjon egy adatértéket vagy egy kurzorváltozót a hívónak. A felhasználó által definiált függvények nem adhatnak meg kimeneti paramétereket.
- Minden tárolt eljárás egy egész számot ad vissza a hívónak. Ha a tárolt eljárás nem állít be explicit módon értéket a visszatérési kódhoz, a visszatérési kód 0.
Az alábbi tárolt eljárás egy bemeneti paraméter, egy kimeneti paraméter és egy visszatérési kód használatát mutatja be:
-- Create a procedure that takes one input parameter and returns one output parameter and a return code.
CREATE PROCEDURE SampleProcedure @EmployeeIDParm INT,
@MaxTotal INT OUTPUT
AS
-- Declare and initialize a variable to hold @@ERROR.
DECLARE @ErrorSave INT
SET @ErrorSave = 0
-- Do a SELECT using the input parameter.
SELECT FirstName, LastName, JobTitle
FROM HumanResources.vEmployee
WHERE EmployeeID = @EmployeeIDParm
-- Save any nonzero @@ERROR value.
IF (@@ERROR <> 0)
SET @ErrorSave = @@ERROR
-- Set a value in the output parameter.
SELECT @MaxTotal = MAX(TotalDue)
FROM Sales.SalesOrderHeader;
IF (@@ERROR <> 0)
SET @ErrorSave = @@ERROR
-- Returns 0 if neither SELECT statement had an error; otherwise, returns the last error.
RETURN @ErrorSave
GO
Tárolt eljárás vagy függvény végrehajtásakor a bemeneti paraméterek értéke konstansra állítható be, vagy egy változó értékét használhatja. A kimeneti paramétereknek és a visszatérési kódoknak az értékeiket egy változóba kell visszaadniuk. A paraméterek és a visszatérési kódok adatértékeket cserélhetnek Transact-SQL változókkal vagy alkalmazásváltozókkal.
Ha egy tárolt eljárást kötegből vagy szkriptből hív meg, a paraméterek és a visszaadott kódértékek Transact-SQL ugyanazon kötegben definiált változókat használhatják. Az alábbi példa egy tétel, amely végrehajtja a korábban létrehozott eljárást. A bemeneti paraméter állandóként van megadva, a kimeneti paraméter és a visszatérési kód pedig Transact-SQL változókban helyezi el az értékeiket:
-- Declare the variables for the return code and output parameter.
DECLARE @ReturnCode INT
DECLARE @MaxTotalVariable INT
-- Execute the stored procedure and specify which variables
-- are to receive the output parameter and return code values.
EXEC @ReturnCode = SampleProcedure @EmployeeIDParm = 19,
@MaxTotal = @MaxTotalVariable OUTPUT
-- Show the values returned.
PRINT ' '
PRINT 'Return code = ' + CAST(@ReturnCode AS CHAR(10))
PRINT 'Maximum Quantity = ' + CAST(@MaxTotalVariable AS CHAR(10))
GO
Az alkalmazások a programváltozókhoz kötött paraméterjelölőkkel cserélhetnek adatokat az alkalmazásváltozók, paraméterek és visszatérési kódok között.
Lásd még:
LÉTREHOZÁSI ELJÁRÁS (Transact-SQL)
DECLARE @local_variable (Transact-SQL)
CREATE függvény (Transact-SQL)
Paraméterek és végrehajtási terv újrafelhasználása szakasz
Változók (Transact-SQL)