OdbcConnection OdbcConnection OdbcConnection OdbcConnection Class

Definición

Representa una conexión abierta a un origen de datos.Represents an open connection to a data source.

public ref class OdbcConnection sealed : System::Data::Common::DbConnection, ICloneable
public sealed class OdbcConnection : System.Data.Common.DbConnection, ICloneable
type OdbcConnection = class
    inherit DbConnection
    interface ICloneable
Public NotInheritable Class OdbcConnection
Inherits DbConnection
Implements ICloneable
Herencia
Implementaciones

Ejemplos

En el ejemplo siguiente se crea un OdbcCommand y un OdbcConnection.The following example creates an OdbcCommand and an OdbcConnection. El OdbcConnection se abre y se establece como el Connection propiedad.The OdbcConnection is opened and set as the Connection property. El ejemplo llama a ExecuteNonQueryy cierra la conexión.The example then calls ExecuteNonQuery, and closes the connection. Para lograr esto, el ExecuteNonQuery se pasa una cadena de conexión y una cadena de consulta que es una instrucción SQL INSERT.To accomplish this, the ExecuteNonQuery is passed a connection string and a query string that is an SQL INSERT statement.

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

Comentarios

Un OdbcConnection objeto representa una conexión única a un origen de datos creado mediante una cadena de conexión o el nombre de origen de datos ODBC (DSN).An OdbcConnection object represents a unique connection to a data source created by using a connection string or ODBC data source name (DSN). Con un sistema de base de datos cliente/servidor, es equivalente a una conexión de red al servidor.With a client/server database system, it is equivalent to a network connection to the server. Dependiendo de la funcionalidad admitida por el controlador ODBC nativo, algunos métodos o propiedades de un OdbcConnection objeto no esté disponible.Depending on the functionality supported by the native ODBC driver, some methods or properties of an OdbcConnection object may not be available.

La OdbcConnection objeto utiliza recursos nativos como identificadores de entorno y la conexión de ODBC.The OdbcConnection object uses native resources such as ODBC environment and connection handles. Debe cerrar siempre explícitamente cualquier abierto OdbcConnection objetos mediante una llamada a Close o Dispose antes de la OdbcConnection objeto queda fuera del ámbito, o colocando la conexión dentro de un Using instrucción.You should always explicitly close any open OdbcConnection objects by calling Close or Dispose before the OdbcConnection object goes out of scope, or by placing the connection within a Using statement. No hacer esto deja la liberación de estos recursos nativos para la recolección de elementos.Not doing this leaves the freeing of these native resources to garbage collection. Podría no estar disponible inmediatamente.It might not free them immediately. Esto, a su vez, puede que en el futuro el controlador subyacente se quede sin recursos o se alcance un límite máximo.This, in turn, can eventually cause the underlying driver to run out of resources or reach a maximum limit. Esto dio como resultado errores intermitentes.This has resulted in intermittent failures. Por ejemplo, es posible que experimente Maximum Connections -relacionados con errores mientras muchas conexiones están esperando a ser eliminada por el recolector de elementos no utilizados.For example, you might experience Maximum Connections -related errors while many connections are waiting to be deleted by the garbage collector. Cerrar explícitamente las conexiones permite un uso más eficaz de recursos nativos, mejorar la escalabilidad y mejorar el rendimiento general de la aplicación.Explicitly closing the connections allows for a more efficient use of native resources, enhancing scalability and improving overall application performance.

Nota

Para implementar aplicaciones de alto rendimiento, con frecuencia debe usar la agrupación de conexiones.To deploy high-performance applications, you frequently must use connection pooling. Sin embargo, cuando se usa el proveedor de datos de .NET Framework para ODBC, no es necesario habilitar la agrupación de conexiones porque el proveedor la administra automáticamente.However, when you use the .NET Framework Data Provider for ODBC, you do not have to enable connection pooling because the provider manages this automatically.

Si uno de los Execute métodos de la OdbcCommand clase produce una grave OdbcException (por ejemplo, un SQL Server nivel de gravedad de 20 o superior), el OdbcConnection puede cerrar.If one of the Execute methods of the OdbcCommand class causes a fatal OdbcException (for example, a SQL Server severity level of 20 or greater), the OdbcConnection may close. Sin embargo, el usuario puede volver a abrir la conexión y continuar.However, the user can reopen the connection and continue.

Una aplicación que crea una instancia de la OdbcConnection objeto puede requerir que todos los llamadores directos e indirectos tengan permisos suficientes en el código mediante el establecimiento de las peticiones de seguridad declarativo o imperativo.An application that creates an instance of the OdbcConnection object can require all direct and indirect callers to have sufficient permission to the code by setting declarative or imperative security demands. OdbcConnection crea las peticiones de seguridad mediante la OdbcPermission objeto.OdbcConnection creates security demands by using the OdbcPermission object. Los usuarios pueden comprobar que su código tiene los permisos necesarios mediante el OdbcPermissionAttribute objeto.Users can verify that their code has sufficient permissions by using the OdbcPermissionAttribute object. Los usuarios y administradores también pueden usar la herramienta Directiva de seguridad de acceso a código (Caspol.exe) para modificar la directiva de seguridad en el equipo, usuario y los niveles de empresa.Users and administrators can also use the Code Access Security Policy Tool (Caspol.exe) to modify security policy at the computer, user, and enterprise levels. Para obtener más información, consulta Code Access Security and ADO.NET.For more information, see Code Access Security and ADO.NET.

Para obtener más información sobre cómo controlar los mensajes de advertencia e informativos del origen de datos, vea eventos de conexión.For more information about handling warning and informational messages from the data source, see Connection Events.

Constructores

OdbcConnection() OdbcConnection() OdbcConnection() OdbcConnection()

Inicializa una nueva instancia de la clase OdbcConnection.Initializes a new instance of the OdbcConnection class.

OdbcConnection(String) OdbcConnection(String) OdbcConnection(String) OdbcConnection(String)

Inicializa una nueva instancia de la OdbcConnection clase con la cadena de conexión especificada.Initializes a new instance of the OdbcConnection class with the specified connection string.

Propiedades

CanRaiseEvents CanRaiseEvents CanRaiseEvents CanRaiseEvents

Obtiene un valor que indica si el componente puede generar un evento.Gets a value indicating whether the component can raise an event.

(Inherited from Component)
ConnectionString ConnectionString ConnectionString ConnectionString

Obtiene o establece la cadena utilizada para abrir un origen de datos.Gets or sets the string used to open a data source.

ConnectionTimeout ConnectionTimeout ConnectionTimeout ConnectionTimeout

Obtiene o establece el tiempo de espera al intentar establecer una conexión antes de terminar el intento y generar un error.Gets or sets the time to wait while trying to establish a connection before terminating the attempt and generating an error.

Container Container Container Container

Obtiene IContainer que contiene Component.Gets the IContainer that contains the Component.

(Inherited from Component)
Database Database Database Database

Obtiene el nombre de la base de datos actual o de la que se va a utilizar una vez que se abre la conexión.Gets the name of the current database or the database to be used after a connection is opened.

DataSource DataSource DataSource DataSource

Obtiene el nombre del servidor o el nombre de archivo del origen de datos.Gets the server name or file name of the data source.

DesignMode DesignMode DesignMode DesignMode

Obtiene un valor que indica si Component está actualmente en modo de diseño.Gets a value that indicates whether the Component is currently in design mode.

(Inherited from Component)
Driver Driver Driver Driver

Obtiene el nombre del controlador ODBC especificado para la conexión actual.Gets the name of the ODBC driver specified for the current connection.

Events Events Events Events

Obtiene la lista de controladores de eventos asociados a Component.Gets the list of event handlers that are attached to this Component.

(Inherited from Component)
ServerVersion ServerVersion ServerVersion ServerVersion

Obtiene una cadena que contiene la versión del servidor al que está conectado el cliente.Gets a string that contains the version of the server to which the client is connected.

Site Site Site Site

Obtiene o establece el ISite de Component.Gets or sets the ISite of the Component.

(Inherited from Component)
State State State State

Obtiene el estado actual de la conexión.Gets the current state of the connection.

Métodos

BeginTransaction() BeginTransaction() BeginTransaction() BeginTransaction()

Inicia una transacción en el origen de datos.Starts a transaction at the data source.

BeginTransaction(IsolationLevel) BeginTransaction(IsolationLevel) BeginTransaction(IsolationLevel) BeginTransaction(IsolationLevel)

Inicia una transacción en el origen de datos con los valores especificados IsolationLevel valor.Starts a transaction at the data source with the specified IsolationLevel value.

ChangeDatabase(String) ChangeDatabase(String) ChangeDatabase(String) ChangeDatabase(String)

Cambia la base de datos actual asociada con una apertura OdbcConnection.Changes the current database associated with an open OdbcConnection.

Close() Close() Close() Close()

Cierra la conexión al origen de datos.Closes the connection to the data source.

CreateCommand() CreateCommand() CreateCommand() CreateCommand()

Crea y devuelve un OdbcCommand objeto asociado con el OdbcConnection.Creates and returns an OdbcCommand object associated with the OdbcConnection.

CreateObjRef(Type) CreateObjRef(Type) CreateObjRef(Type) CreateObjRef(Type)

Crea un objeto que contiene toda la información relevante necesaria para generar un proxy utilizado para comunicarse con un objeto remoto.Creates an object that contains all the relevant information required to generate a proxy used to communicate with a remote object.

(Inherited from MarshalByRefObject)
Dispose() Dispose() Dispose() Dispose()

Libera todos los recursos que usa Component.Releases all resources used by the Component.

(Inherited from Component)
Dispose(Boolean) Dispose(Boolean) Dispose(Boolean) Dispose(Boolean)

Libera los recursos no administrados que usa Component y, de forma opcional, libera los recursos administrados.Releases the unmanaged resources used by the Component and optionally releases the managed resources.

(Inherited from Component)
EnlistDistributedTransaction(ITransaction) EnlistDistributedTransaction(ITransaction) EnlistDistributedTransaction(ITransaction) EnlistDistributedTransaction(ITransaction)

Se da de alta en la transacción especificada como una transacción distribuida.Enlists in the specified transaction as a distributed transaction.

EnlistTransaction(Transaction) EnlistTransaction(Transaction) EnlistTransaction(Transaction) EnlistTransaction(Transaction)

Se da de alta en la transacción especificada como una transacción distribuida.Enlists in the specified transaction as a distributed transaction.

Equals(Object) Equals(Object) Equals(Object) Equals(Object)

Determina si el objeto especificado es igual al objeto actual.Determines whether the specified object is equal to the current object.

(Inherited from Object)
GetHashCode() GetHashCode() GetHashCode() GetHashCode()

Sirve como la función hash predeterminada.Serves as the default hash function.

(Inherited from Object)
GetLifetimeService() GetLifetimeService() GetLifetimeService() GetLifetimeService()

Recupera el objeto de servicio de duración actual que controla la directiva de duración de esta instancia.Retrieves the current lifetime service object that controls the lifetime policy for this instance.

(Inherited from MarshalByRefObject)
GetSchema() GetSchema() GetSchema() GetSchema()

Devuelve información de esquema para el origen de datos de OdbcConnection.Returns schema information for the data source of this OdbcConnection.

GetSchema(String) GetSchema(String) GetSchema(String) GetSchema(String)

Devuelve información de esquema para el origen de datos de OdbcConnection con el nombre especificado para el nombre del esquema.Returns schema information for the data source of this OdbcConnection using the specified name for the schema name.

GetSchema(String, String[]) GetSchema(String, String[]) GetSchema(String, String[]) GetSchema(String, String[])

Devuelve información de esquema para el origen de datos de OdbcConnection utilizando la cadena especificada para el nombre del esquema y la matriz de cadena determinada para los valores de restricción.Returns schema information for the data source of this OdbcConnection using the specified string for the schema name and the specified string array for the restriction values.

GetService(Type) GetService(Type) GetService(Type) GetService(Type)

Devuelve un objeto que representa el servicio suministrado por Component o por Container.Returns an object that represents a service provided by the Component or by its Container.

(Inherited from Component)
GetType() GetType() GetType() GetType()

Obtiene el Type de la instancia actual.Gets the Type of the current instance.

(Inherited from Object)
InitializeLifetimeService() InitializeLifetimeService() InitializeLifetimeService() InitializeLifetimeService()

Obtiene un objeto de servicio de duración para controlar la directiva de duración de esta instancia.Obtains a lifetime service object to control the lifetime policy for this instance.

(Inherited from MarshalByRefObject)
MemberwiseClone() MemberwiseClone() MemberwiseClone() MemberwiseClone()

Crea una copia superficial del Object actual.Creates a shallow copy of the current Object.

(Inherited from Object)
MemberwiseClone(Boolean) MemberwiseClone(Boolean) MemberwiseClone(Boolean) MemberwiseClone(Boolean)

Crea una copia superficial del objeto MarshalByRefObject actual.Creates a shallow copy of the current MarshalByRefObject object.

(Inherited from MarshalByRefObject)
Open() Open() Open() Open()

Abre una conexión a un origen de datos con los valores de propiedad especificados por el ConnectionString.Opens a connection to a data source with the property settings specified by the ConnectionString.

ReleaseObjectPool() ReleaseObjectPool() ReleaseObjectPool() ReleaseObjectPool()

Indica que se puede liberar el identificador de entorno del Administrador de controladores ODBC cuando se libere la última conexión subyacente.Indicates that the ODBC Driver Manager environment handle can be released when the last underlying connection is released.

ToString() ToString() ToString() ToString()

Devuelve una String que contiene el nombre del Component, si existe.Returns a String containing the name of the Component, if any. Este método no se debe invalidar.This method should not be overridden.

(Inherited from Component)

Eventos

Disposed Disposed Disposed Disposed

Se produce cuando el componente se elimina mediante una llamada al método Dispose().Occurs when the component is disposed by a call to the Dispose() method.

(Inherited from Component)
InfoMessage InfoMessage InfoMessage InfoMessage

Se produce cuando el controlador ODBC envía una mensaje de advertencia o informativo.Occurs when the ODBC driver sends a warning or an informational message.

StateChange StateChange StateChange StateChange

Se produce cuando cambia el estado de la conexión.Occurs when the state of the connection changes.

Implementaciones de interfaz explícitas

ICloneable.Clone() ICloneable.Clone() ICloneable.Clone() ICloneable.Clone()

Para una descripción de este miembro, vea Clone().For a description of this member, see Clone().

IDbConnection.BeginTransaction() IDbConnection.BeginTransaction() IDbConnection.BeginTransaction() IDbConnection.BeginTransaction()

Inicia una transacción de base de datos.Begins a database transaction.

IDbConnection.BeginTransaction(IsolationLevel) IDbConnection.BeginTransaction(IsolationLevel) IDbConnection.BeginTransaction(IsolationLevel) IDbConnection.BeginTransaction(IsolationLevel)

Inicia una transacción de base de datos con el nivel de aislamiento especificado.Begins a database transaction with the specified isolation level.

IDbConnection.CreateCommand() IDbConnection.CreateCommand() IDbConnection.CreateCommand() IDbConnection.CreateCommand()

Crea y devuelve un objeto command asociado a la conexión.Creates and returns a command object associated with the connection.

Se aplica a

Consulte también: