Datenzugriff von CLR-Datenbankobjekten aus
Eine CLR-Routine (Common Language Runtime) kann auf einfache Weise auf Daten zugreifen, die in einer Instanz von Microsoft SQL Server gespeichert sind, auf der sie ausgeführt wird, sowie auf Daten, die in Remoteinstanzen gespeichert wurden. Auf welche Daten die Routine zugreifen kann, wird durch den Benutzerkontext bestimmt, in dem der Code ausgeführt wird. Der Datenzugriff erfolgt von einem CLR-Datenbankobjekt mithilfe des .NET Framework-Datenanbieters für SQL Server, der auch als SqlClient bezeichnet wird. Dies ist der gleiche Anbieter, den Entwickler zum Zugriff von verwalteten Clientanwendungen und Anwendungen der mittleren Ebene auf SQL Server-Daten verwenden. Daher können Sie Ihre ADO.NET- und SqlClient-Kenntnisse in Clientanwendungen und Anwendungen der mittleren Ebene nutzen.
Hinweis |
---|
Benutzerdefinierten Typmethoden und benutzerdefinierten Funktionen wird nicht ermöglicht, standardmäßig auf Daten zuzugreifen. Sie müssen die DataAccess-Eigenschaft von SqlMethodAttribute oder SqlFunctionAttribute auf DataAccessKind.Read festlegen, um schreibgeschützten Datenzugriff von benutzerdefinierten Typmethoden (User Defined Type, UDT) oder benutzerdefinierten Funktionen zu aktivieren. Datenänderungsvorgänge von UDTs oder benutzerdefinierten Funktionen ausgehend sind nicht zulässig. Ein solcher Versuch löst zur Ausführungszeit eine Ausnahme aus. |
In diesem Abschnitt werden nur die spezifischen Unterschiede der Funktionen und Verhaltensweisen beim Datenzugriff von einem CLR-Datenbankobjekt ausgehend beschrieben. Weitere Informationen zu Funktionen und Funktionalität von ADO.NET finden Sie in der ADO.NET-Dokumentation im .NET Framework SDK.
In der folgenden Tabelle sind die Themen dieses Abschnitts aufgeführt.
Kontextverbindung
Beschreibt die Kontextverbindung zu SQL Server.Identitätswechsel und Anmeldeinformationen für Verbindungen
Beschreibt die Annahme der Identität von Verbindungen und Verbindungsanmeldeinformationen.Von SQL Server verwendete prozessinterne spezifische Erweiterungen für ADO.NET
Erläutert die prozessinternen spezifischen SqlPipe, SqlContext, SqlTriggerContext und SqlDataRecord-Objekte.CLR-Integration und Transaktionen
Beschreibt wie das neue vom System.Transactions-Namespace bereitgestellte Transaktionsframework in ADO.NET und SQL Server-CLRIntegration einbezogen wird.XML-Serialisierung auf Grundlage von CLR-Datenbankobjekten
Erklärt, wie XML-Serialisierungsszenarien von CLR-Datenbankobjekten in SQL Server aktiviert werden.