Raise custom errors from stored procedure, DOT NET Programming

Assignment Help:

How can you raise custom errors from stored procedure?

The RAISERROR statements are  used to produce an ad hoc error message or to retrieve acustom message which is stored in the sysmessages table. You can use this statement with the error handling code presented in the previous part to implement custom error messages in your applications. The syntax of the statement is shown below.

RAISERROR ({msg_id |msg_str }{,severity ,state }

[ ,argument [ ,,...n ] ] ))

[ WITH option [ ,,...n ] ]

The description of the components of the statement is as shown below:

msg_id :-This ID is used for an error message,that is stored in the error column in the sysmessages.

msg_str :-This shows a custom message that is not contained in sysmessages.

severity :- The severity level is associated with the error. The valid values are at 0-25.The Severity levels 0-18 can be used by any user, but 19-25 are only available to those members of the fixed-server role sysadmin. When the levels 19-25 are used, then the WITH LOG option is required.

The state A value that shows the invocation state of the error. The valid values are 0-127. That  value is not used by the SQL Server.

Argument, . . .

It is used by One or more variables that are used to customize the message. For e.g., you could pass the current process ID (@@SPID) so it could be displayed in the message.

WITH option, . . .

The three values that are used with this optional argument are described here.

LOG - It Forces the error to log in the SQL Server error log and the NT application log.

NOWAIT - This Sends the message immediately to the client.

SETERROR - This Sets @@ERROR to the unique ID for the message or 50,000.

The number of options available for the statement made it seem complicated, but it is actually simple to use. The following shows how to create an ad hoc message with the severity of 10 and a state of 1.

RAISERROR ('An error occurred during updating the NonFatal table',10,1)

--Results--

An error definitely occurred on updating the NonFatal table.The statement does not have to be used in the conjunction with any other code, but for our purposes it will be used with the error handling code presented earlier. The shown below alters the ps_NonFatal_INSERT procedure to use RAISERROR.

USE tempdb go

ALTER PROCEDURE ps_NonFatal_INSERT

@Column2 int =NULL AS

DECLARE @ErrorMsgID int

INSERT NonFatal VALUES (@Column2) SET @ErrorMsgID =@@ERROR

IF @ErrorMsgID <>0

BEGIN

RAISERROR ('An error occured updating the NonFatal table',10,1) END


Related Discussions:- Raise custom errors from stored procedure

Characteristics of object oriented system''s, What are characteristic's of ...

What are characteristic's of Object Oriented System's? The characteristics of Object Oriented System's are as follows: 1)    Abstraction: The Abstraction allows the comple

Define gac-how to add assembly from gac, GAC (Global Assembly Cache) is us...

GAC (Global Assembly Cache) is used where shared .NET assembly resides.Global Assembly Cache is used in the following situations:- 1) When the application has to be shared among

What is xml dom, What is XML DOM? The DOM stands for Document Object Mo...

What is XML DOM? The DOM stands for Document Object Model, which explains the logical formation of documents and provides the way to access and manipulate a document. It suppli

Differentiate between boxing and unboxing, Differentiate between Boxing and...

Differentiate between Boxing and Unboxing. When a value type is changed to an object type, the process is known as boxing; while, when an object type is changed to a value type

Candidate key, What is a candidate key? A table may have more than one ...

What is a candidate key? A table may have more than one combination of columns that could uniquely identify the rows in a table; every combination is a candidate key. During th

What is the difference between vb6 and vb.net, What is the difference betwe...

What is the difference between VB6 and VB.Net? VB6 1.       It is Object-based Language 2.       It Does not support Threading 3.       Not powerful Exception handli

Operator overloading in .net, What is Operator Overloading in .NET? It ...

What is Operator Overloading in .NET? It gives a way to define and use operators like +, -, and / for user-defined classes or structs. It permits us to define/redefine the way

What is a gateway, What is a gateway or Router? A node that is linked t...

What is a gateway or Router? A node that is linked to two or more networks is commonly called as router or Gateway. It generally forwards message from single network to another

Which property on a combo box do you set with a column name, Which property...

Which property on a Combo Box do you set with a column name, prior to setting the Data Source, to display data in the combo box? ComboBox.DataValueField = "ColumnName" When

I want text or image printing counter, I want Text/Image printing Counter ...

I want Text/Image printing Counter Project Description: Need your help in our C# programming project. We need to pass this project in two weeks starting from now to pass our

Write Your Message!

Captcha
Free Assignment Quote

Assured A++ Grade

Get guaranteed satisfaction & time on delivery in every assignment order you paid with us! We ensure premium quality solution document along with free turntin report!

All rights reserved! Copyrights ©2019-2020 ExpertsMind IT Educational Pvt Ltd