sql >> Databáze >  >> RDS >> Sqlserver

Je návratová hodnota 0 v uložených procedurách vždy úspěšná?

Ne, něco můžete vrátit sami

příklad

CREATE PROC pr_test AS 
SELECT 1/0

RETURN 0
GO

Nyní to spusťte

DECLARE @i INT
exec @i = pr_test

SELECT @i  -- will be 0

DROP PROC pr_test

Nyní to udělejme znovu bez příkazu return

CREATE PROC pr_test2 AS 
SELECT 1/0

GO

DECLARE @i INT
exec @i = pr_test2

SELECT @i  -- will be - 6

Je lepší použít output parameter předávat zpět stavy nebo zprávy



  1. Speciální znaky se při exportu/importu MySQL ztratí

  2. Jak používat ALIAS v klauzuli ORDER BY PostgreSQL?

  3. Špičkové techniky, jak se vyhnout „odstranění dat“ z databáze webových stránek

  4. Získejte základní sloupce zobrazení na základě sady výsledků