Usage Scenarios and Examples for Common Language Runtime (CLR) Integration
SQL Server includes sample applications, package samples, and numerous coding samples that you can use to learn about the programmability features of common language runtime (CLR) integration.
The following table describes the CLR integration programmability samples that are available on CodePlex; see SQL Server Database Engine Samples for more information.
Name |
Description |
---|---|
SQL Server Database Engine Samples |
Provides utilities that form an extra layer of functionality on top of the base AdventureWorks2008R2 sample database. |
Supplementary-Aware String Manipulation |
Shows the implementation of five supplementary-aware Transact-SQL string functions that can handle both Unicode and surrogate strings. |
Large Object (LOB) Handling |
Demonstrates transferring large binary objects (LOBs) between SQL Server and a file system accessible to the server using CLR stored procedures. |
In-Process Data Access Sample |
Contains a number of simple functions demonstrating various features of the CLR in-process data access provider. |
String Split Table-Valued Function (TVF) |
Contains a streaming table-valued function (TVF), written in Visual C# and Visual Basic, which splits a comma-separated string into a table with one column. |
UDT Utilities |
Contains a number of user-defined data type (UDT) utility functions. |
User-Defined Data Type (UDT) Sample |
Shows the creation and use of a simple UDT from both Transact-SQL and a client application using System.Data.SqlClient. |
UTF8 String User-Defined Data Type (UDT) |
Demonstrates the implementation of a UDT that extends the type system of the database to provide storage for UTF8 encoded values. |
Calendar-Aware Date/Time UDTs |
Defines two UDTs that provide calendar-aware handling of dates and times. |
Result Set Sample |
Demonstrates how to execute commands while reading through results of a query, without opening a new connection and without reading all results into memory. |
Array Parameter Sample |
Demonstrates how to create, update, or delete a set of rows in a database by passing an array of information from a client to a CLR integration stored procedure on the server. This is done using a UDT. |
Hello World Sample |
Demonstrates the basic operations to create, deploy, and test a simple CLR integration-based stored procedure. |
Hello World Ready Sample |
Demonstrates the basic operations to create, deploy, and test a simple world ready CLR integration-based stored procedure. |
Impersonation Sample |
Demonstrates how to use impersonation to use the credentials passed from the client. This is done to access operating system protected resources when you are using integrated security. |
Spatial Sample |
Demonstrates how to use impersonation to use the credentials passed from the client to access operating system protected resources, such as files, when you are using integrated security. |
Oracle TVF Sample |
Demonstrates how to invoke the managed code interface to Oracle to expose the results of any Oracle query as a table-valued function. |
Send DataSet Sample |
Demonstrates how to return an ADO.NET based DataSet within a server side CLR-based stored procedure as a result set to the client. |
System.Transactions Sample |
Demonstrates controlling transactions by using the managed APIs located in the System.Transactions namespace. |