Collections:
DEFAULT - Providing Default Values to Function Parameters in SQL Server
How To Provide Default Values to Function Parameters in SQL Server Transact-SQL?
✍: FYIcenter.com
If you add a parameter when creating a stored procedure, you can provide a default value so that the execution statement is not required to pass input value to this parameter:
The tutorial exercise below shows you how provide default values to function parameters:
USE FyiCenterData;
GO
CREATE FUNCTION Age_In_Days (
@birth_date DATETIME,
@today DATETIME = NULL
)
RETURNS INT
AS BEGIN
IF @today IS NULL SET @today = GETDATE();
RETURN DATEDIFF(DAY, @birth_date, @today);
END;
GO
-- Default value is used
PRINT 'Age in days: '+STR(
dbo.Age_In_Days('01-Jan-2007', DEFAULT));
GO
Age in days: 138
-- Default value is not used
PRINT 'Age in days: '+STR(
dbo.Age_In_Days('01-Jan-2007', '11-May-2007'));
GO
Age in days: 130
-- Can not skip input values
-- even for parameters with default values
PRINT 'Age in days: '+STR(
dbo.Age_In_Days('01-Jan-2007'));
GO
Msg 313, Level 16, State 2, Line 1
An insufficient number of arguments were supplied
for the procedure or function dbo.Age_In_Days.
⇒ Categories of Functions Based on Return Modes in SQL Server
⇐ Passing Expressions to Function Parameters in SQL Server
2023-03-03, 37172🔥, 1💬
Popular Posts:
What is dba.FYIcenter.com Website about? dba.FYIcenter.com is a Website for DBAs (database administr...
What are DDL (Data Definition Language) statements for tables in SQL Server? DDL (Data Definition La...
How To Generate Random Numbers with the RAND() Function in SQL Server Transact-SQL? Random numbers a...
How To Insert New Line Characters into Strings in SQL Server Transact-SQL? If you want to break a st...
How to execute statements in loops in SQL Server Transact-SQL? How to use WHILE ... loops? You can u...