Acceso a datos de objetos de base de datos de CLR

Una rutina Common Language Runtime (CLR) puede fácilmente tener acceso a los datos almacenados en la instancia de MicrosoftSQL Server en la que se ejecuta, así como a los datos almacenados en instancias remotas. El contexto del usuario en el que se ejecuta el código, determina los datos concretos a los que la rutina puede tener acceso. Tener acceso a datos desde un objeto de base de datos de CLR mediante el proveedor de datos de .NET Framework para SQL Server, también se conoce como SqlClient. Éste es el mismo proveedor que usan los programadores con acceso a los datos de SQL Server desde aplicaciones cliente administradas y de nivel medio. Debido a esto, puede aprovechar sus conocimientos de ADO.NET y SqlClient en aplicaciones cliente y de nivel medio.

[!NOTA]

De forma predeterminada, los métodos de tipo definido por el usuario y funciones definidas por el usuario no pueden tener acceso a datos. Debe establecer la propiedad DataAccess de SqlMethodAttribute o SqlFunctionAttribute en DataAccessKind.Read para habilitar el acceso a datos de solo lectura desde métodos de tipo definido por el usuario (UDT) o funciones definidas por el usuario. Las operaciones de modificación de datos o las funciones definidas por el usuario no se permiten desde los UDT y, si se intentan producen excepciones en tiempo de ejecución.

En esta sección únicamente se discuten las diferencias de funcionalidad y de comportamiento concretas cuando se tiene acceso a los datos desde un objeto de base de datos de CLR. Para obtener más información acerca de las características y funcionalidad de ADO.NET, vea la documentación de ADO.NET que se incluye en .NET Framework SDK.

En la siguiente tabla se muestran los temas de esta sección.