Condividi tramite


Compilare oggetti di database con integrazione CLR (Common Language Runtime)

Si applica a:SQL Server

È possibile compilare oggetti di database usando l'integrazione di SQL Server con Common Language Runtime (CLR) di .NET Framework. Il codice gestito eseguito all'interno di SQL Server viene chiamato routine CLR . Queste routine includono:

  • Funzioni definite dall'utente con valori scalari
  • Funzioni definite dall'utente con valori di tabella
  • Procedure definite dall'utente
  • Trigger definiti dall'utente

Le routine CLR hanno la stessa struttura in codice gestito. Viene eseguito il mapping ai metodi statici e pubblici (condivisi in Visual Basic .NET) di una classe. Oltre alle routine, è possibile definire tipi definiti dall'utente e funzioni di aggregazione definite dall'utente utilizzando .NET Framework. Viene eseguito il mapping dei tipi definiti dall'utente (UDT) e delle aggregazioni definite dall'utente a intere classi di .NET Framework.

Ogni tipo di routine di .NET Framework ha una dichiarazione Transact-SQL e può essere usato ovunque in SQL Server sia possibile usare l'equivalente Transact-SQL. Le funzioni scalari definite dall'utente, ad esempio, possono essere utilizzate in qualsiasi espressione scalare. Un valore TVF può essere usato in qualsiasi clausola FROM. Una routine può essere richiamata in un'istruzione EXEC o richiamata da un'applicazione client.

L'esecuzione di un oggetto CLR (funzione definita dall'utente, tipo definito dall'utente o trigger) in Common Language Runtime può essere eseguita su più thread (piano parallelo), se Query Optimizer decide che è utile. Tuttavia, se una funzione definita dall'utente accede ai dati, l'esecuzione è in un piano seriale.

Nella tabella seguente sono elencati gli articoli trattati in questa sezione.

Articolo Descrizione
Introduzione all'integrazione con CLR Viene fornita una breve panoramica delle librerie e degli spazi dei nomi necessari per compilare l'oggetto usando l'integrazione con CLR con SQL Server. È inclusa una stored procedure CLR "Hello World" di esempio.
librerie .NET Framework supportate Include informazioni sulle librerie .NET Framework supportate dall'integrazione CLR.
restrizioni del modello di programmazione di integrazione CLR Include informazioni sulle restrizioni del modello di programmazione dell'integrazione CLR.
tipi di dati di SQL Server in .NET Framework Panoramica dei tipi di dati di SQL Server e dei relativi equivalenti .NET Framework.
integrazione clr : attributi personalizzati per routine CLR Include informazioni sugli attributi personalizzati dell'integrazione CLR.
funzioni CLR definite dall'utente Viene descritto come implementare e utilizzare i diversi tipi di funzioni CLR, ovvero le funzioni con valori di tabella, le funzioni scalari e le funzioni di aggregazione definite dall'utente.
tipi CLR definiti dall'utente Viene descritto come implementare e utilizzare i tipi CLR definiti dall'utente.
stored procedure CLR Viene descritto come implementare e utilizzare le stored procedure CLR.
trigger CLR Viene descritto come implementare e utilizzare i trigger CLR.
  • di integrazione di Common Language Runtime (CLR)