从 CLR 数据库对象访问数据
适用范围:SQL Server
公共语言运行时(CLR)例程可以轻松访问存储在 SQL Server 实例中运行的数据,以及存储在远程实例中的数据。 运行代码的用户上下文确定例程可以访问的特定数据。 使用用于 SQL Server 的 .NET Framework 数据提供程序从 CLR 数据库对象中访问数据,也称为 SqlClient
。 这是开发人员从托管客户端和中间层应用程序访问 SQL Server 数据的同一提供程序。 因此,可以在客户端和中间层应用程序中使用对 ADO.NET 和 SqlClient
的知识。
默认情况下不允许用户定义类型方法和用户定义函数执行数据访问。 必须将 SqlMethodAttribute
或 SqlFunctionAttribute
的 DataAccess
属性设置为 DataAccessKind.Read
才能从用户定义的类型(UDT)方法或用户定义的函数启用只读数据访问。 不允许从 UDT 或用户定义的函数执行数据修改操作,并在执行时(如果尝试)引发异常。
本节只讨论当从 CLR 数据库对象中访问数据时特定的功能差异和行为差异。 有关 ADO.NET 的特性和功能的详细信息,请参阅 .NET Framework SDK 随附的 ADO.NET 文档。
下表列出了本节中的文章。
品 | 描述 |
---|---|
上下文连接 | 介绍与 SQL Server 之间的上下文连接。 |
连接 |
介绍模拟连接和连接凭据。 |
SQL Server 进程内特定扩展 ADO.NET | 讨论进程内特定的 SqlPipe 、SqlContext 、SqlTriggerContext 和 SqlDataRecord 对象。 |
CLR 集成和事务 | 介绍 System.Transactions 命名空间中提供的新事务框架如何与 ADO.NET 和 SQL Server CLR 集成集成。 |
从 CLR 数据库对象进行 XML 序列化 | 介绍如何在 SQL Server 中启用 CLR 数据库对象的 XML 序列化方案。 |