Partilhar via


Acesso a dados de objetos de banco de dados CLR

Aplica-se a:SQL Server

Uma rotina CLR (Common Language Runtime) pode acessar facilmente dados armazenados na instância do SQL Server em que é executada e dados armazenados em instâncias remotas. O contexto do usuário no qual o código é executado determina os dados específicos que a rotina pode acessar. Acesse dados de dentro de um objeto de banco de dados CLR usando o Provedor de Dados do .NET Framework para SQL Server, também conhecido como SqlClient. Este é o mesmo provedor usado por desenvolvedores que acessam dados do SQL Server de aplicativos de camada intermediária e cliente gerenciados. Por isso, você pode usar seu conhecimento de ADO.NET e SqlClient em aplicativos cliente e de camada intermediária.

Métodos de tipo definidos pelo usuário e funções definidas pelo usuário não têm permissão para executar o acesso a dados por padrão. Você deve definir a propriedade DataAccess de SqlMethodAttribute ou SqlFunctionAttribute como DataAccessKind.Read para habilitar o acesso a dados somente leitura de métodos UDT (tipo definido pelo usuário) ou funções definidas pelo usuário. As operações de modificação de dados não são permitidas a partir de UDTs ou funções definidas pelo usuário e lançam exceções no tempo de execução, se tentadas.

Esta seção discute apenas as diferenças funcionais e comportamentais específicas ao acessar dados de dentro de um objeto de banco de dados CLR. Para obter mais informações sobre os recursos e a funcionalidade do ADO.NET, consulte a documentação ADO.NET incluída no SDK do .NET Framework.

A tabela a seguir lista os artigos desta seção.

Artigo Descrição
Conexão de contexto Descreve a conexão de contexto com o SQL Server.
Representação e credenciais para conexões Descreve a representação de conexões e credenciais de conexão.
extensões específicas em processo do SQL Server para ADO.NET Discute os objetos SqlPipe, SqlContext, SqlTriggerContexte SqlDataRecord específicos em processo.
integração CLR e transações Descreve como a nova estrutura de transação fornecida no namespace System.Transactions se integra à integração CLR do ADO.NET e do SQL Server.
serialização XML a partir de objetos de banco de dados CLR Explica como habilitar cenários de serialização XML de objetos de banco de dados CLR dentro do SQL Server.