SIGN UP MEMBER LOGIN:    
ARTICLE

SQLCLR Debugging

Posted by Amit Anajwala Articles | SQL Server 2012 November 10, 2005
In SQL Server 2005, CLR integration allows you to write stored procedures, triggers, user-defined types, and user-defined functions using any .NET Framework language, including Microsoft Visual Basic .NET and Microsoft Visual C#. In this article, I will explain how to debug SQLCLR stored procedure or SQLCLR user-defined function.
Reader Level:

Visual Studio can debug TSQL stored procedures, functions, and triggers in SQL Server 7.0, 2000 and SQL Server 2005.

 

In SQL Server 2005, CLR integration allows you to write stored procedures, triggers, user-defined types, and user-defined functions using any .NET Framework language, including Microsoft Visual Basic .NET and Microsoft Visual C#.

 

I assume you have already created SQLCLR stored procedure, function or trigger object.

 

Note:  You will require Visual Studio 2005 and SQL Server 2005 (or SQL Server 2005 Express) to develop SQLCLR objects.

 

SQLCLR Stored Procedure:

 

Let say you have created a SQLCLR Stored Procedure.

 

Open existing SQL Server Project with SQLCLR Stored Procedure in Visual Studio 2005.

 

Right click the SQL Server Project in Solution Explorer and click Deploy.

 

Click View menu and select Server Explorer. In Server Explorer, add Database Connection if it does not exist. This should be same database connection, which you choose when creating SQLCLR object.

 

There is no need to create the assembly in SQL Server 2005, if you just want to debug the stored procedure or function in Visual Studio 2005.

 

Now go to Assemblies folder in database connection in Server Explorer. You would find the assembly with your project name. Inside that, you would find the object with your stored procedure name.

 

If you have added the following line before stored procedure, when you created the Stored Procedure in Visual Studio 2005, then Stored Procedure will appear with that name in Assemblies folder in Server Explorer.

SQLCLR1.gif

 

[SqlProcedure(Name = "<Stored Procedure Name>")]



Image: Selecting SQLCLR Stored Procedure in Server Explorer

 

Right click the Stored Procedure in Server Explorer and click Open to open the stored procedure in Visual Studio 2005.

 

Right click the Stored Procedure in Server Explorer and click Execute to execute the stored procedure from Visual Studio. After execution, you would find the results in Output window.

 

In Output Window, Select 'Database Output' or 'Debug' from 'Show output from' dropdown to view the output results of stored procedure.

 

Right click the Stored Procedure in Server Explorer and click Step Into Stored Procedure. Debuuger will stop at first statement in Stored Procedure. Now you will get full debugger support in Visual Studio to debug the Stored Procedure. You can execute stored procedure one step at a time using F10 or F11 key. You can view different output windows like Autos, Local, Immediate, Call Stack etc.

 

SQLCLR User-Defined Function:

 

Similarly you can create the SQLCLR user-defined function, deploy the SQL Server project and debug that user-defind function from Assemblies folder in Server Explorer. 

Login to add your contents and source code to this article
share this article :
post comment
 
Nevron Gauge for SharePoint
Become a Sponsor
PREMIUM SPONSORS
  • Finally – a virtual platform that delivers next-generation Windows Server 2008 Hyper-V virtualization technology from a managed hosting partner you can truly depend on. Visit www.maximumasp.com/max for a FREE 30 day trial. Hurry offer ends soon. Climb aboard the MaxV platform and take advantage of High Availability, Intelligent Monitoring, Recurrent Backups, and Scalability – with no hassle or hidden fees. As a managed hosting partner focused solely on Microsoft technologies since 2000, MaximumASP is uniquely qualified to provide the superior support that our business is built on. Unparalleled expertise with Microsoft technologies lead to working directly with Microsoft as first to offer IIS 7 and SQL 2008 betas in a hosted environment; partnering in the Go Live Program for Hyper-V; and product co-launches built on WS 2008 with Hyper-V technology.
    Finally – a virtual platform that delivers next-generation Windows Server 2008 Hyper-V virtualization technology from a managed hosting partner you can truly depend on. Visit www.maximumasp.com/max for a FREE 30 day trial. Hurry offer ends soon. Climb aboard the MaxV platform and take advantage of High Availability, Intelligent Monitoring, Recurrent Backups, and Scalability – with no hassle or hidden fees. As a managed hosting partner focused solely on Microsoft technologies since 2000, MaximumASP is uniquely qualified to provide the superior support that our business is built on. Unparalleled expertise with Microsoft technologies lead to working directly with Microsoft as first to offer IIS 7 and SQL 2008 betas in a hosted environment; partnering in the Go Live Program for Hyper-V; and product co-launches built on WS 2008 with Hyper-V technology.
Become a Sponsor