Assemblies (Database Engine)

Applies to: SQL Server

The topics in this section provide information to help you understand, design, and implement assemblies.

Assemblies are DLL files used in an instance of SQL Server to deploy functions, stored procedures, triggers, user-defined aggregates, and user-defined types that are written in one of the managed code languages hosted by the Microsoft .NET Framework common language runtime (CLR), instead of in Transact-SQL.

An assembly in SQL Server is an object that references a managed application module (.dll file) that was created in the .NET Framework common language runtime. An assembly contains class metadata and managed code. Uploading an assembly to an instance of SQL Server is the first step toward creating any of the following database objects:

Assemblies perform the following functions in SQL Server:

  • Contain the managed code that runs the functionality of one or more of the CLR database objects previously listed.

  • Contain metadata that includes the version number and culture of the assembly, an optional public key that uniquely identifies the list of classes of the assembly, the methods that are defined in the assembly, and the processor architecture of the assembly.

  • Manage the degree to which managed code can access outside resources by regulating code access permissions.

  • Contain metadata about dependencies on other assemblies that are referenced by the assembly.

In This Section

Topic Description
Designing Assemblies Explains what you have to consider before creating an assembly. This includes packaging assemblies, code access permissions, and other restrictions.
Implementing Assemblies Explains how to create and drop assemblies, how and when to modify assemblies, and how to retrieve metadata about assemblies.
Getting Information About Assemblies Lists the catalog views and functions that can be queried for metadata about assemblies.

See Also

Common Language Runtime (CLR) Integration Programming Concepts