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
OdbcConnection
Héritage
Héritage
Implémente

Exemples

L’exemple suivant crée un OdbcCommand et un OdbcConnection. est OdbcConnection ouvert et défini comme propriété Connection . L’exemple appelle ExecuteNonQueryensuite et 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 INSERT SQL.

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 OdbcConnection objet 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, cela é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 OdbcConnection objet 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 tous les objets ouverts OdbcConnection en appelant Close ou Supprimer avant que l’objet ne sorte de l’étendue OdbcConnection , ou en plaçant la connexion dans une Using instruction. Le fait de ne pas procéder ainsi laisse la libération de ces ressources natives au garbage collection. Il se peut que cela ne les libère pas immédiatement. Cela, à son tour, peut éventuellement entraîner une panne de ressources du pilote sous-jacent ou atteindre une limite maximale. Cela a entraîné des échecs intermittents. Par exemple, vous pouvez rencontrer Maximum Connections des erreurs liées alors 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 de l’application.

Notes

Pour déployer des applications hautes performances, vous devez souvent 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 Execute des méthodes de la OdbcCommand classe provoque une fatalité OdbcException (par exemple, un SQL Server niveau de gravité égal ou supérieur à 20), le OdbcConnection peut se fermer. L'utilisateur peut toutefois 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 sur le code en définissant des exigences de sécurité déclaratives ou impératives. OdbcConnection crée des exigences 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 Code Access Security and 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 qui indique 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 mettre fin à la tentative et de générer une erreur.

Container

Obtient le IContainer qui contient la Component.

(Hérité de Component)
Database

Obtient le nom de la base de données active ou de la base de données à utiliser une fois la connexion ouverte.

DataSource

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

DbProviderFactory

Obtient le DbProviderFactory pour ce DbConnection.

(Hérité de DbConnection)
DesignMode

Obtient une valeur qui indique si Component est actuellement en mode design.

(Hérité de Component)
Driver

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

Events

Obtient la liste des gestionnaires d'événements attachés à ce 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 le ISite de 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 manière asynchrone une transaction de base de données.

(Hérité de DbConnection)
BeginTransaction()

Commence une transaction dans la source de données.

BeginTransaction(IsolationLevel)

Commence une transaction dans la source de données avec la valeur IsolationLevel spécifiée.

BeginTransactionAsync(CancellationToken)

Commence de manière asynchrone une transaction de base de données.

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

Commence de manière asynchrone une transaction de base de données.

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

Modifie la base de données en cours associée à un OdbcConnection ouvert.

ChangeDatabaseAsync(String, CancellationToken)

Change de manière asynchrone la base de données actuelle pour une connexion ouverte.

(Hérité de DbConnection)
Close()

Ferme la connexion à la source de données.

CloseAsync()

Ferme de manière 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é à 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 DbBatch classe .

(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 active.

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

Crée un objet contenant toutes les informations appropriées requises pour générer un proxy permettant de communiquer avec un objet distant.

(Hérité de MarshalByRefObject)
Dispose()

Exécute les tâches définies par l'application associées à la libération ou à la redéfinition des ressources non managées.

(Hérité de DbConnection)
Dispose()

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

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

Libère les ressources non managées utilisées par 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 Component et libère éventuellement les ressources managées.

(Hérité de Component)
DisposeAsync()

Supprime de manière asynchrone l’objet de connexion.

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

S’inscrit dans la transaction spécifiée en tant que transaction distribuée.

EnlistTransaction(Transaction)

S’inscrit dans la transaction spécifiée en tant que transaction distribuée.

EnlistTransaction(Transaction)

S'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()

Fait office 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 en cours qui contrôle la stratégie de durée de vie de cette instance.

(Hérité de MarshalByRefObject)
GetSchema()

Retourne les informations de schéma pour la source de données de ce OdbcConnection.

GetSchema()

Retourne les informations de schéma pour la source de données de ce DbConnection.

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

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

GetSchema(String)

Retourne des informations de schéma pour la source de données de ce DbConnection à l’aide de la chaîne spécifiée pour le nom de schéma.

(Hérité de DbConnection)
GetSchema(String, String[])

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

GetSchema(String, String[])

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

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

Il s'agit d’une version asynchrone de GetSchema(). Les fournisseurs doivent effectuer le remplacement avec une implémentation appropriée. Le cancellationToken peut éventuellement être respecté. L'implémentation par défaut appelle l'appel de méthode GetSchema() synchrone et retourne une tâche terminée. L'implémentation par défaut retourne une tâche annulée si un cancellationToken déjà annulé est passé. Les exceptions levées par GetSchema() sont communiquées via la propriété d'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 effectuer le remplacement avec une implémentation appropriée. Le cancellationToken peut éventuellement être respecté. L'implémentation par défaut appelle l'appel de méthode GetSchema(String) synchrone et retourne une tâche terminée. L'implémentation par défaut retourne une tâche annulée si un cancellationToken déjà annulé est passé. Les exceptions levées par GetSchema(String) sont communiquées via la propriété d'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 effectuer le remplacement avec une implémentation appropriée. Le cancellationToken peut éventuellement être respecté. L'implémentation par défaut appelle l'appel de méthode GetSchema(String, String[]) synchrone et retourne une tâche terminée. L'implémentation par défaut retourne une tâche annulée si un cancellationToken déjà annulé est passé. Les exceptions levées par GetSchema(String, String[]) sont communiquées via la propriété d'exception de tâche retournée.

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

Retourne un objet qui représente un service fourni par Component ou par son Container.

(Hérité de Component)
GetType()

Obtient le 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 Object actuel.

(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 ConnectionString.

OpenAsync()

Version asynchrone de Open(), qui ouvre une connexion de base de données avec les paramètres spécifiés par 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 effectuer le remplacement avec une implémentation appropriée. Le jeton d'annulation peut éventuellement être respecté.

L'implémentation par défaut appelle l'appel de méthode Open() synchrone et retourne une tâche terminée. L'implémentation par défaut retourne une tâche annulée si un cancellationToken déjà annulé est passé. Les exceptions levées par Open sont communiquées via la propriété d'exception de tâche retournée.

N'appelle pas d'autres méthodes et propriétés de l'objet DbConnection jusqu'à ce que la tâche retournée soit terminée.

(Hérité de DbConnection)
ReleaseObjectPool()

Indique que le handle de l'environnement du gestionnaire de pilotes ODBC peut être libéré lorsque la dernière connexion sous-jacente est libérée.

ToString()

Retourne une chaîne qui représente l'objet actuel.

(Hérité de Object)
ToString()

Retourne un String contenant le nom du Component, s’il en existe un. 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 quand l’état de la connexion change.

StateChange

Se produit quand 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’isolement spécifié.

IDbConnection.BeginTransaction(IsolationLevel)

Commence une transaction de base de données avec le niveau d’isolement 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 Command associé à la connexion.

IDbConnection.CreateCommand()

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

(Hérité de DbConnection)

S’applique à

Voir aussi