Accesso ai dati da oggetti di database CLR

Si applica a:SQL Server

Una routine CLR (Common Language Runtime) può facilmente accedere ai dati archiviati nell'istanza di Microsoft SQL Server in cui viene eseguita, nonché i dati archiviati in istanze remote. I dati specifici cui può accedere la routine sono determinati dal contesto utente in cui viene eseguito il codice. Accedere ai dati dall'interno di un oggetto di database CLR usando il provider di dati .NET Framework per SQL Server, definito anche SqlClient. Questo è lo stesso provider usato dagli sviluppatori che accedono ai dati SQL Server da applicazioni client gestite e di livello intermedio. A causa di questo, è possibile sfruttare le conoscenze di ADO.NET e SqlClient nelle applicazioni client e di livello intermedio.

Nota

Per impostazione predefinita, ai metodi con tipo definito dall'utente e alle funzioni definite dall'utente non è consentito eseguire accesso ai dati. È necessario impostare la proprietà DataAccess di SqlMethodAttribute o SqlFunctionAttribute su DataAccessKind.Read per abilitare l'accesso ai dati di sola lettura dai metodi definiti dall'utente o dalle funzioni definite dall'utente. Le operazioni di modifica dei dati non sono consentite da tipi definiti dall'utente o funzioni definite dall'utente e, in caso di un tentativo a tale scopo, vengono generate eccezioni in fase di esecuzione.

In questa sezione vengono illustrate solo le specifiche differenze funzionali e di comportamento durante l'accesso ai dati da un oggetto di database CLR. Per ulteriori informazioni su caratteristiche e funzionalità di ADO.NET, vedere la documentazione di ADO.NET inclusa in .NET Framework SDK.

Nella tabella seguente vengono elencati gli argomenti disponibili in questa sezione.

Connessione di contesto
Viene descritta la connessione di contesto a SQL Server.

Rappresentazione e credenziali per le connessioni
Viene descritta la rappresentazione di connessioni e credenziali di connessione.

Estensioni specifiche in-process di SQL Server ad ADO.NET
Vengono illustrati gli oggetti SqlPipe, SqlContext, SqlTriggerContext e SqlDataRecord specifici.

Integrazione con CLR e transazioni
Viene descritto come il nuovo framework di transazione fornito nello spazio dei nomi System.Transactions si integra con ADO.NET e SQL Server integrazione CLR.

Serializzazione XML da oggetti di database CLR
Viene illustrato come abilitare gli scenari di serializzazione XML degli oggetti di database CLR all'interno di SQL Server.