views:

39

answers:

1

Hi, I'm trying to work out how to write a store procdure which returns a boolean value. I started off writing the following one which returns an int.

USE [Database]
GO
/****** Object:  StoredProcedure [dbo].[ReturnInt]    Script Date: 09/30/2010 09:31:11 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
ALTER procedure [dbo].[ReturnInt]  AS
RETURN 3

I'm unsure however how to write one to return a boolean value.

Can somebody help? Is it a bit value?

+3  A: 

You can't. There is no boolean datatype and the procedure return code can only be an int. You can return a bit as an output parameter though.

CREATE PROCEDURE [dbo].[ReturnBit] 
@bit BIT OUTPUT
AS
    BEGIN
    SET @bit = 1
    END

And to call it

DECLARE @B BIT
EXEC [dbo].[ReturnBit] @B OUTPUT
SELECT @B
Martin Smith
Depending on what you're doing you could use a function instead.
Joe Philllips
Thanks for the answer!
Mr Cricket