OleDbConnection OleDbConnection OleDbConnection OleDbConnection Class

Определение

Представляет открытое подключение к источнику данных.Represents an open connection to a data source.

public ref class OleDbConnection sealed : System::Data::Common::DbConnection, ICloneable, IDisposable
public sealed class OleDbConnection : System.Data.Common.DbConnection, ICloneable, IDisposable
type OleDbConnection = class
    inherit DbConnection
    interface ICloneable
    interface IDbConnection
    interface IDisposable
Public NotInheritable Class OleDbConnection
Inherits DbConnection
Implements ICloneable, IDisposable
Наследование
Реализации

Примеры

В следующем примере создаются OleDbCommand OleDbConnectionи.The following example creates an OleDbCommand and an OleDbConnection. Открывается и устанавливается в Connection качестве для OleDbCommand. OleDbConnectionThe OleDbConnection is opened and set as the Connection for the OleDbCommand. Затем в примере вызывается ExecuteNonQuery и закрывается соединение.The example then calls ExecuteNonQuery and closes the connection. Для этого ExecuteNonQuery передается строка подключения и строка запроса, которая является инструкцией SQL INSERT.To accomplish this, ExecuteNonQuery is passed a connection string and a query string that is an SQL INSERT statement.

public void InsertRow(string connectionString, string insertSQL)
{
    using (OleDbConnection connection = new OleDbConnection(connectionString))
    {
        // The insertSQL string contains a SQL statement that
        // inserts a new row in the source table.
        OleDbCommand command = new OleDbCommand(insertSQL);

        // Set the Connection to the new OleDbConnection.
        command.Connection = connection;

        // Open the connection and execute the insert command.
        try
        {
            connection.Open();
            command.ExecuteNonQuery();
        }
        catch (Exception ex)
        {
            Console.WriteLine(ex.Message);
        }
        // The connection is automatically closed when the
        // code exits the using block.
    }
}
Public Sub InsertRow(ByVal connectionString As String, _
    ByVal insertSQL As String)

    Using connection As New OleDbConnection(connectionString)
        ' The insertSQL string contains a SQL statement that
        ' inserts a new row in the source table.
        Dim command As New OleDbCommand(insertSQL)

        ' Set the Connection to the new OleDbConnection.
        command.Connection = connection

        ' Open the connection and execute the insert command.
        Try
            connection.Open()
            command.ExecuteNonQuery()
        Catch ex As Exception
            Console.WriteLine(ex.Message)
        End Try
        ' The connection is automatically closed when the
        ' code exits the Using block.
    End Using
End Sub

Комментарии

OleDbConnection Объект представляет уникальное соединение с источником данных.An OleDbConnection object represents a unique connection to a data source. В системе базы данных клиента или сервера она эквивалентна сетевому подключению к серверу.With a client/server database system, it is equivalent to a network connection to the server. В зависимости от функциональности, поддерживаемой поставщиком собственного OLE DB, некоторые методы или свойства OleDbConnection объекта могут быть недоступны.Depending on the functionality supported by the native OLE DB provider, some methods or properties of an OleDbConnection object may not be available.

При создании экземпляра OleDbConnectionвсе свойства устанавливаются в исходные значения.When you create an instance of OleDbConnection, all properties are set to their initial values. Список этих значений см. в OleDbConnection описании конструктора.For a list of these values, see the OleDbConnection constructor.

Можно открыть более одного DataReader в одном OleDbConnection.You can open more than one DataReader on a single OleDbConnection. Если используемый поставщик OLE DB не поддерживает более одного объекта DataReader в одном соединении, поставщик неявно открывает дополнительное соединение для каждого из них.If the OLE DB provider you use does not support more than one DataReader on a single connection, the provider implicitly opens an additional connection for each.

Если объект OleDbConnection выходит из области действия, он не закрывается.If the OleDbConnection goes out of scope, it is not closed. Поэтому необходимо явно закрыть Close соединение, вызвав или Dispose, OleDbConnection или с помощью объекта в Using инструкции.Therefore, you must explicitly close the connection by calling Close or Dispose, or by using the OleDbConnection object within a Using statement.

Примечание

Для развертывания высокопроизводительных приложений необходимо использовать пулы соединений.To deploy high-performance applications, you must use connection pooling. При использовании .NET Framework поставщика данных для OLE DB не нужно включать пулы соединений, так как поставщик управляет этим автоматически.When you use the .NET Framework Data Provider for OLE DB, you do not have to enable connection pooling because the provider manages this automatically. Дополнительные сведения об использовании пулов соединений с поставщиком данных .NET Framework для OLE DB см. в разделе OLE DB, ODBC и Oracle.For more information about how to use connection pooling with the .NET Framework Data Provider for OLE DB, see OLE DB, ODBC, and Oracle Connection Pooling.

Если Неустранимая OleDbException ошибка OleDbCommand(например, SQL Server уровень серьезности 20 или выше) создается методом, то OleDbConnection может быть закрыт.If a fatal OleDbException (for example, a SQL Server severity level of 20 or greater) is generated by the method executing an OleDbCommand, the OleDbConnection might be closed. Тем не менее, пользователь может опять открыть подключение и продолжить работу.However, the user can reopen the connection and continue.

Приложение, создающее экземпляр OleDbConnection объекта, может потребовать, чтобы все прямые и косвенные вызывающие объекты имели достаточные разрешения на доступ к коду, установив декларативные или императивные требования безопасности.An application that creates an instance of the OleDbConnection object can require all direct and indirect callers to have sufficient permission to the code by setting declarative or imperative security demands. OleDbConnectionвыполняет требования безопасности с помощью OleDbPermission объекта.OleDbConnection makes security demands using the OleDbPermission object. Пользователи могут убедиться, что их код имеет достаточные разрешения с OleDbPermissionAttribute помощью объекта.Users can verify that their code has sufficient permissions by using the OleDbPermissionAttribute object. Пользователи и администраторы также могут использовать средство Caspol. exe (политика управления доступом для кода) для изменения политики безопасности на уровне компьютера, пользователя и предприятия.Users and administrators can also use the Caspol.exe (Code Access Security Policy Tool) to modify security policy at the computer, user, and enterprise levels. Для получения дополнительной информации см. Code Access Security and ADO.NET.For more information, see Code Access Security and ADO.NET.

Дополнительные сведения об обработке предупреждений и информационных сообщений с сервера данных см. в разделе события подключения.For more information about handling warning and informational messages from the data server, see Connection Events.

Примечание

OleDbConnection Объект не поддерживает установку или получение динамических свойств, относящихся к поставщику OLE DB.The OleDbConnection object does not support setting or retrieving dynamic properties specific to an OLE DB provider. Поддерживаются только те свойства, которые можно передать в строке соединения поставщику OLE DB.Only properties that can be passed in the connection string for the OLE DB provider are supported.

Конструкторы

OleDbConnection() OleDbConnection() OleDbConnection() OleDbConnection()

Инициализирует новый экземпляр класса OleDbConnection.Initializes a new instance of the OleDbConnection class.

OleDbConnection(String) OleDbConnection(String) OleDbConnection(String) OleDbConnection(String)

Инициализирует новый экземпляр класса OleDbConnection с заданной строкой подключения.Initializes a new instance of the OleDbConnection class with the specified connection string.

Свойства

CanRaiseEvents CanRaiseEvents CanRaiseEvents CanRaiseEvents

Возвращает значение, показывающее, может ли компонент вызывать событие.Gets a value indicating whether the component can raise an event.

(Inherited from Component)
ConnectionString ConnectionString ConnectionString ConnectionString

Получает или задает строку, используемую для открытия базы данных.Gets or sets the string used to open a database.

ConnectionTimeout ConnectionTimeout ConnectionTimeout ConnectionTimeout

Получает время ожидания при попытке установки подключения, по истечении которого попытка подключения завершается и создается ошибка.Gets the time to wait while trying to establish a connection before terminating the attempt and generating an error.

Container Container Container Container

Возвращает контейнер IContainer, содержащий компонент Component.Gets the IContainer that contains the Component.

(Inherited from Component)
Database Database Database Database

Получает имя текущей базы данных или базы данных, которая будет использоваться после открытия подключения.Gets the name of the current database or the database to be used after a connection is opened.

DataSource DataSource DataSource DataSource

Получает имя сервера или имя файла источника данных.Gets the server name or file name of the data source.

DesignMode DesignMode DesignMode DesignMode

Возвращает значение, указывающее, находится ли данный компонент Component в режиме конструктора в настоящее время.Gets a value that indicates whether the Component is currently in design mode.

(Inherited from Component)
Events Events Events Events

Возвращает список обработчиков событий, которые прикреплены к этому объекту Component.Gets the list of event handlers that are attached to this Component.

(Inherited from Component)
Provider Provider Provider Provider

Получает имя поставщика OLE DB, указанное в выражении "Provider= " строки подключения.Gets the name of the OLE DB provider specified in the "Provider= " clause of the connection string.

ServerVersion ServerVersion ServerVersion ServerVersion

Получает строку, содержащую номер версии сервера, к которому подключается клиент.Gets a string that contains the version of the server to which the client is connected.

Site Site Site Site

Возвращает или задает ISite объекта Component.Gets or sets the ISite of the Component.

(Inherited from Component)
State State State State

Возвращает текущее состояние подключения.Gets the current state of the connection.

Методы

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

Запускает транзакцию базы данных с текущим значением IsolationLevel.Starts a database transaction with the current IsolationLevel value.

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

Начинает транзакцию базы данных с указанным уровнем изоляции.Starts a database transaction with the specified isolation level.

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

Осуществляет смену текущей базы данных для открытого соединения OleDbConnection.Changes the current database for an open OleDbConnection.

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

Закрывает подключение к источнику данных.Closes the connection to the data source.

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

Создает и возвращает объект OleDbCommand, связанный с объектом OleDbConnection.Creates and returns an OleDbCommand object associated with the OleDbConnection.

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

Создает объект, который содержит всю необходимую информацию для создания прокси-сервера, используемого для взаимодействия с удаленным объектом.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()

Освобождает все ресурсы, занятые модулем Component.Releases all resources used by the Component.

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

Освобождает неуправляемые ресурсы, используемые объектом Component, а при необходимости освобождает также управляемые ресурсы.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)

Выполняет присоединение указанной транзакции как распределенной транзакции.Enlists in the specified transaction as a distributed transaction.

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

Выполняет присоединение указанной транзакции как распределенной транзакции.Enlists in the specified transaction as a distributed transaction.

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

Определяет, равен ли заданный объект текущему объекту.Determines whether the specified object is equal to the current object.

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

Служит хэш-функцией по умолчанию.Serves as the default hash function.

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

Извлекает объект обслуживания во время существования, который управляет политикой времени существования данного экземпляра.Retrieves the current lifetime service object that controls the lifetime policy for this instance.

(Inherited from MarshalByRefObject)
GetOleDbSchemaTable(Guid, Object[]) GetOleDbSchemaTable(Guid, Object[]) GetOleDbSchemaTable(Guid, Object[]) GetOleDbSchemaTable(Guid, Object[])

Возвращает сведения схемы из источника данных, как указано в GUID, и после применения указанных ограничений.Returns schema information from a data source as indicated by a GUID, and after it applies the specified restrictions.

GetSchema() GetSchema() GetSchema() GetSchema()

Возвращает сведения схемы для источника данных этого объекта OleDbConnection.Returns schema information for the data source of this OleDbConnection.

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

Возвращает сведения о схеме для источника данных этого объекта OleDbConnection, используя указанную строку в качестве имени схемы.Returns schema information for the data source of this OleDbConnection using the specified string for the schema name.

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

Возвращает сведения о схеме для источника данных этого объекта OleDbConnection, используя указанную строку в качестве имени схемы и указанный массив строк для значений ограничений.Returns schema information for the data source of this OleDbConnection 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)

Возвращает объект, представляющий службу, обеспечиваемую компонентом Component или его контейнером Container.Returns an object that represents a service provided by the Component or by its Container.

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

Возвращает объект Type для текущего экземпляра.Gets the Type of the current instance.

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

Получает объект службы времени существования для управления политикой времени существования для этого экземпляра.Obtains a lifetime service object to control the lifetime policy for this instance.

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

Создает неполную копию текущего объекта Object.Creates a shallow copy of the current Object.

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

Создает неполную копию текущего объекта MarshalByRefObject.Creates a shallow copy of the current MarshalByRefObject object.

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

Открывает подключение к базе данных со значениями свойств, определяемыми объектом ConnectionString.Opens a database connection with the property settings specified by the ConnectionString.

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

Означает, что пул объектов OleDbConnection может быть освобожден, когда последнее основное подключение будет освобождено.Indicates that the OleDbConnection object pool can be released when the last underlying connection is released.

ResetState() ResetState() ResetState() ResetState()

Обновляет свойство State объекта OleDbConnection.Updates the State property of the OleDbConnection object.

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

Возвращает объект String, содержащий имя Component, если оно есть.Returns a String containing the name of the Component, if any. Этот метод не следует переопределять.This method should not be overridden.

(Inherited from Component)

События

Disposed Disposed Disposed Disposed

Происходит при удалении компонента вызовом метода Dispose().Occurs when the component is disposed by a call to the Dispose() method.

(Inherited from Component)
InfoMessage InfoMessage InfoMessage InfoMessage

Происходит, когда поставщик отправляет предупреждение или информационное сообщение.Occurs when the provider sends a warning or an informational message.

StateChange StateChange StateChange StateChange

Явные реализации интерфейса

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

Описание этого члена см. в разделе Clone().For a description of this member, see Clone().

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

Начинает транзакцию базы данных.Begins a database transaction.

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

Начинает транзакцию базы данных с указанным уровнем изоляции.Begins a database transaction with the specified isolation level.

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

Создает и возвращает объект команды, связанный с подключением.Creates and returns a command object associated with the connection.

Применяется к

Дополнительно