Partager via


OdbcConnection Classe

Définition

Représente une connexion ouverte à une source de données.

public ref class OdbcConnection sealed : System::Data::Common::DbConnection, ICloneable
public ref class OdbcConnection sealed : System::ComponentModel::Component, ICloneable, IDisposable, System::Data::IDbConnection
public sealed class OdbcConnection : System.Data.Common.DbConnection, ICloneable
public sealed class OdbcConnection : System.ComponentModel.Component, ICloneable, IDisposable, System.Data.IDbConnection
type OdbcConnection = class
    inherit DbConnection
    interface ICloneable
type OdbcConnection = class
    inherit Component
    interface ICloneable
    interface IDbConnection
    interface IDisposable
Public NotInheritable Class OdbcConnection
Inherits DbConnection
Implements ICloneable
Public NotInheritable Class OdbcConnection
Inherits Component
Implements ICloneable, IDbConnection, IDisposable
Héritage
Héritage
Implémente

Exemples

L’exemple suivant crée un OdbcCommand et un OdbcConnection. Le OdbcConnection est ouvert et défini comme propriété Connection. L’exemple appelle ensuite ExecuteNonQueryet ferme la connexion. Pour ce faire, le ExecuteNonQuery est passé une chaîne de connexion et une chaîne de requête qui est une instruction SQL INSERT.

static private void InsertRow(string connectionString)
{
    string queryString =
        "INSERT INTO Customers (CustomerID, CompanyName) Values('NWIND', 'Northwind Traders')";
    OdbcCommand command = new OdbcCommand(queryString);

    using (OdbcConnection connection = new OdbcConnection(connectionString))
    {
        command.Connection = connection;
        connection.Open();
        command.ExecuteNonQuery();

        // The connection is automatically closed at
        // the end of the Using block.
    }
}
Private Sub InsertRow(ByVal connectionString As String)

    Dim queryString As String = _
        "INSERT INTO Customers (CustomerID, CompanyName) Values('NWIND', 'Northwind Traders')"
    Dim command As New OdbcCommand(queryString)

    Using connection As New OdbcConnection(connectionString)
        command.Connection = connection
        connection.Open()
        command.ExecuteNonQuery()

        ' The connection is automatically closed at 
        ' the end of the Using block.
    End Using
End Sub

Remarques

Un objet OdbcConnection représente une connexion unique à une source de données créée à l’aide d’une chaîne de connexion ou d’un nom de source de données ODBC (DSN). Avec un système de base de données client/serveur, il équivaut à une connexion réseau au serveur. Selon les fonctionnalités prises en charge par le pilote ODBC natif, certaines méthodes ou propriétés d’un objet OdbcConnection peuvent ne pas être disponibles.

L’objet OdbcConnection utilise des ressources natives telles que l’environnement ODBC et les handles de connexion. Vous devez toujours fermer explicitement les objets OdbcConnection ouverts en appelant Close ou Supprimer avant que l’objet OdbcConnection ne soit hors de portée, ou en plaçant la connexion dans une instruction Using. Cela ne laisse pas la libération de ces ressources natives au garbage collection. Il peut ne pas les libérer immédiatement. Cela peut, à son tour, entraîner l’expiration du pilote sous-jacent ou atteindre une limite maximale. Cela a entraîné des défaillances intermittentes. Par exemple, vous pouvez rencontrer des erreurs Maximum Connections -related pendant que de nombreuses connexions attendent d’être supprimées par le garbage collector. La fermeture explicite des connexions permet d’utiliser plus efficacement les ressources natives, d’améliorer la scalabilité et d’améliorer les performances globales des applications.

Note

Pour déployer des applications hautes performances, vous devez fréquemment utiliser le regroupement de connexions. Toutefois, lorsque vous utilisez le fournisseur de données .NET Framework pour ODBC, vous n’avez pas besoin d’activer le regroupement de connexions, car le fournisseur gère cela automatiquement.

Si l’une des méthodes Execute de la classe OdbcCommand provoque une OdbcException irrécupérable (par exemple, un niveau de gravité SQL Server de 20 ou supérieur), le OdbcConnection peut se fermer. Toutefois, l’utilisateur peut rouvrir la connexion et continuer.

Une application qui crée une instance de l’objet OdbcConnection peut exiger que tous les appelants directs et indirects disposent d’une autorisation suffisante pour le code en définissant des exigences de sécurité déclaratives ou impératives. OdbcConnection crée des demandes de sécurité à l’aide de l’objet OdbcPermission. Les utilisateurs peuvent vérifier que leur code dispose d’autorisations suffisantes à l’aide de l’objet OdbcPermissionAttribute. Les utilisateurs et les administrateurs peuvent également utiliser l’outil de stratégie de sécurité d’accès au code (Caspol.exe) pour modifier la stratégie de sécurité au niveau de l’ordinateur, de l’utilisateur et de l’entreprise. Pour plus d’informations, consultez sécurité d’accès au code et ADO.NET.

Pour plus d’informations sur la gestion des messages d’avertissement et d’information à partir de la source de données, consultez événements de connexion.

Constructeurs

OdbcConnection()

Initialise une nouvelle instance de la classe OdbcConnection.

OdbcConnection(String)

Initialise une nouvelle instance de la classe OdbcConnection avec la chaîne de connexion spécifiée.

Propriétés

CanCreateBatch

Obtient une valeur qui indique si cette instance DbConnection prend en charge la classe DbBatch.

(Hérité de DbConnection)
CanRaiseEvents

Obtient une valeur indiquant si le composant peut déclencher un événement.

(Hérité de Component)
ConnectionString

Obtient ou définit la chaîne utilisée pour ouvrir une source de données.

ConnectionTimeout

Obtient ou définit le délai d’attente (en secondes) lors de la tentative d’établissement d’une connexion avant de terminer la tentative et de générer une erreur.

Container

Obtient le IContainer qui contient le Component.

(Hérité de Component)
Database

Obtient le nom de la base de données active ou de la base de données à utiliser après l’ouverture d’une connexion.

DataSource

Obtient le nom du serveur ou le nom de fichier de la source de données.

DbProviderFactory

Obtient la DbProviderFactory pour cette DbConnection.

(Hérité de DbConnection)
DesignMode

Obtient une valeur qui indique si le Component est actuellement en mode création.

(Hérité de Component)
Driver

Obtient le nom du pilote ODBC spécifié pour la connexion actuelle.

Events

Obtient la liste des gestionnaires d’événements qui sont attachés à cette Component.

(Hérité de Component)
ServerVersion

Obtient une chaîne qui contient la version du serveur auquel le client est connecté.

Site

Obtient ou définit la ISite du Component.

(Hérité de Component)
State

Obtient l’état actuel de la connexion.

Méthodes

BeginDbTransaction(IsolationLevel)

En cas de substitution dans une classe dérivée, démarre une transaction de base de données.

(Hérité de DbConnection)
BeginDbTransactionAsync(IsolationLevel, CancellationToken)

Démarre de façon asynchrone une transaction de base de données.

(Hérité de DbConnection)
BeginTransaction()

Démarre une transaction à la source de données.

BeginTransaction(IsolationLevel)

Démarre une transaction à la source de données avec la valeur IsolationLevel spécifiée.

BeginTransactionAsync(CancellationToken)

Commence de façon asynchrone une transaction de base de données.

(Hérité de DbConnection)
BeginTransactionAsync(IsolationLevel, CancellationToken)

Commence de façon asynchrone une transaction de base de données.

(Hérité de DbConnection)
ChangeDatabase(String)

Modifie la base de données actuelle associée à une OdbcConnectionouverte.

ChangeDatabaseAsync(String, CancellationToken)

Modifie de façon asynchrone la base de données active pour une connexion ouverte.

(Hérité de DbConnection)
Close()

Ferme la connexion à la source de données.

CloseAsync()

Ferme de façon asynchrone la connexion à la base de données.

(Hérité de DbConnection)
CreateBatch()

Retourne une nouvelle instance de la classe du fournisseur qui implémente la classe DbBatch.

(Hérité de DbConnection)
CreateCommand()

Crée et retourne un objet OdbcCommand associé au OdbcConnection.

CreateDbBatch()

En cas de substitution dans une classe dérivée, retourne une nouvelle instance de la classe du fournisseur qui implémente la classe DbBatch.

(Hérité de DbConnection)
CreateDbCommand()

En cas de substitution dans une classe dérivée, crée et retourne un objet DbCommand associé à la connexion actuelle.

(Hérité de DbConnection)
CreateObjRef(Type)

Crée un objet qui contient toutes les informations pertinentes requises pour générer un proxy utilisé pour communiquer avec un objet distant.

(Hérité de MarshalByRefObject)
Dispose()

Effectue des tâches définies par l’application associées à la libération, à la libération ou à la réinitialisation des ressources non managées.

(Hérité de DbConnection)
Dispose()

Libère toutes les ressources utilisées par le Component.

(Hérité de Component)
Dispose(Boolean)

Libère les ressources non managées utilisées par le DbConnection et libère éventuellement les ressources managées.

(Hérité de DbConnection)
Dispose(Boolean)

Libère les ressources non managées utilisées par le Component et libère éventuellement les ressources managées.

(Hérité de Component)
DisposeAsync()

Dipose de façon asynchrone l’objet de connexion.

(Hérité de DbConnection)
EnlistDistributedTransaction(ITransaction)

Inscrit dans la transaction spécifiée en tant que transaction distribuée.

EnlistTransaction(Transaction)

Inscrit dans la transaction spécifiée en tant que transaction distribuée.

EnlistTransaction(Transaction)

Inscrit dans la transaction spécifiée.

(Hérité de DbConnection)
Equals(Object)

Détermine si l’objet spécifié est égal à l’objet actuel.

(Hérité de Object)
GetHashCode()

Sert de fonction de hachage par défaut.

(Hérité de Object)
GetLifetimeService()
Obsolète.

Récupère l’objet de service de durée de vie actuel qui contrôle la stratégie de durée de vie de cette instance.

(Hérité de MarshalByRefObject)
GetSchema()

Retourne des informations de schéma pour la source de données de cette OdbcConnection.

GetSchema(String)

Retourne des informations de schéma pour la source de données de cette OdbcConnection à l’aide du nom spécifié pour le nom du schéma.

GetSchema(String, String[])

Retourne des informations de schéma pour la source de données de cette OdbcConnection à l’aide de la chaîne spécifiée pour le nom du schéma et du tableau de chaînes spécifié pour les valeurs de restriction.

GetSchemaAsync(CancellationToken)

Il s’agit d’une version asynchrone de GetSchema(). Les fournisseurs doivent remplacer par une implémentation appropriée. Le cancellationToken peut éventuellement être honoré. L’implémentation par défaut appelle l’appel de GetSchema() synchrone et retourne une tâche terminée. L’implémentation par défaut retourne une tâche annulée s’il a réussi un cancellationTokendéjà annulé. Les exceptions levées par GetSchema() sont communiquées via la propriété Exception de tâche retournée.

(Hérité de DbConnection)
GetSchemaAsync(String, CancellationToken)

Il s’agit de la version asynchrone de GetSchema(String). Les fournisseurs doivent remplacer par une implémentation appropriée. Le cancellationToken peut éventuellement être honoré. L’implémentation par défaut appelle l’appel de GetSchema(String) synchrone et retourne une tâche terminée. L’implémentation par défaut retourne une tâche annulée s’il a réussi un cancellationTokendéjà annulé. Les exceptions levées par GetSchema(String) sont communiquées via la propriété Exception de tâche retournée.

(Hérité de DbConnection)
GetSchemaAsync(String, String[], CancellationToken)

Il s’agit de la version asynchrone de GetSchema(String, String[]). Les fournisseurs doivent remplacer par une implémentation appropriée. Le cancellationToken peut éventuellement être honoré. L’implémentation par défaut appelle l’appel de GetSchema(String, String[]) synchrone et retourne une tâche terminée. L’implémentation par défaut retourne une tâche annulée s’il a réussi un cancellationTokendéjà annulé. Les exceptions levées par GetSchema(String, String[]) sont communiquées via la propriété Exception de tâche retournée.

(Hérité de DbConnection)
GetService(Type)

Renvoie un objet qui représente un service fourni par l'Component ou par son Container.

(Hérité de Component)
GetType()

Obtient la Type de l’instance actuelle.

(Hérité de Object)
InitializeLifetimeService()
Obsolète.

Obtient un objet de service de durée de vie pour contrôler la stratégie de durée de vie de cette instance.

(Hérité de MarshalByRefObject)
MemberwiseClone()

Crée une copie superficielle du Objectactuel.

(Hérité de Object)
MemberwiseClone(Boolean)

Crée une copie superficielle de l’objet MarshalByRefObject actuel.

(Hérité de MarshalByRefObject)
OnStateChange(StateChangeEventArgs)

Déclenche l’événement StateChange.

(Hérité de DbConnection)
Open()

Ouvre une connexion à une source de données avec les paramètres de propriété spécifiés par le ConnectionString.

OpenAsync()

Version asynchrone de Open(), qui ouvre une connexion de base de données avec les paramètres spécifiés par le ConnectionString. Cette méthode appelle la méthode virtuelle OpenAsync(CancellationToken) avec CancellationToken.None.

(Hérité de DbConnection)
OpenAsync(CancellationToken)

Il s’agit de la version asynchrone de Open(). Les fournisseurs doivent remplacer par une implémentation appropriée. Le jeton d’annulation peut éventuellement être honoré.

L’implémentation par défaut appelle l’appel de Open() synchrone et retourne une tâche terminée. L’implémentation par défaut retourne une tâche annulée si elle a passé une annulation d’annulationToken. Les exceptions levées par Open seront communiquées via la propriété Exception de tâche retournée.

N’appelez pas d’autres méthodes et propriétés de l’objet DbConnection tant que la tâche retournée n’est pas terminée.

(Hérité de DbConnection)
ReleaseObjectPool()

Indique que le handle d’environnement ODBC Driver Manager peut être libéré lorsque la dernière connexion sous-jacente est publiée.

ToString()

Retourne un String contenant le nom du Component, le cas échéant. Cette méthode ne doit pas être remplacée.

(Hérité de Component)

Événements

Disposed

Se produit lorsque le composant est supprimé par un appel à la méthode Dispose().

(Hérité de Component)
InfoMessage

Se produit lorsque le pilote ODBC envoie un avertissement ou un message d’information.

StateChange

Se produit lorsque l’état de la connexion change.

StateChange

Se produit lorsque l’état de la connexion change.

(Hérité de DbConnection)

Implémentations d’interfaces explicites

ICloneable.Clone()

Pour obtenir une description de ce membre, consultez Clone().

IDbConnection.BeginTransaction()

Cette API prend en charge l'infrastructure du produit et n'est pas destinée à être utilisée directement à partir de votre code.

Commence une transaction de base de données.

IDbConnection.BeginTransaction()

Commence une transaction de base de données.

(Hérité de DbConnection)
IDbConnection.BeginTransaction(IsolationLevel)

Cette API prend en charge l'infrastructure du produit et n'est pas destinée à être utilisée directement à partir de votre code.

Commence une transaction de base de données avec le niveau d’isolation spécifié.

IDbConnection.BeginTransaction(IsolationLevel)

Commence une transaction de base de données avec le niveau d’isolation spécifié.

(Hérité de DbConnection)
IDbConnection.CreateCommand()

Cette API prend en charge l'infrastructure du produit et n'est pas destinée à être utilisée directement à partir de votre code.

Crée et retourne un objet de commande associé à la connexion.

IDbConnection.CreateCommand()

Crée et retourne un objet DbCommand associé à la connexion actuelle.

(Hérité de DbConnection)

Méthodes d’extension

ConfigureAwait(IAsyncDisposable, Boolean)

Configure la façon dont les attentes sur les tâches retournées à partir d’un jetable asynchrone sont effectuées.

S’applique à

Voir aussi