OleDbParameter OleDbParameter OleDbParameter OleDbParameter Class

Определение

Представляет параметр для OleDbCommand и дополнительно его отображение для столбца DataSet.Represents a parameter to an OleDbCommand and optionally its mapping to a DataSet column. Этот класс не наследуется.This class cannot be inherited.

public ref class OleDbParameter sealed : System::Data::Common::DbParameter, ICloneable
[System.ComponentModel.TypeConverter(typeof(System.Data.OleDb.OleDbParameter/OleDbParameterConverter))]
[System.ComponentModel.TypeConverter(typeof(System.Data.OleDb.OleDbParameterConverter))]
public sealed class OleDbParameter : System.Data.Common.DbParameter, ICloneable
type OleDbParameter = class
    inherit DbParameter
    interface ICloneable
    interface IDbDataParameter
    interface IDataParameter
Public NotInheritable Class OleDbParameter
Inherits DbParameter
Implements ICloneable
Наследование
Атрибуты
Реализации

Примеры

В следующем примере создается несколько экземпляров OleDbParameter через OleDbParameterCollection коллекции в течение OleDbDataAdapter.The following example creates multiple instances of OleDbParameter through the OleDbParameterCollection collection within the OleDbDataAdapter. Эти параметры используются для выбора данных из источника данных и помещения их в DataSet.These parameters are used to select data from the data source and place the data in the DataSet. В этом примере предполагается, что DataSet и OleDbDataAdapter уже были созданы с помощью соответствующей схемы, команд и подключения.This example assumes that a DataSet and an OleDbDataAdapter have already been created by using the appropriate schema, commands, and connection.

public DataSet GetDataSetFromAdapter(
    DataSet dataSet, string connectionString, string queryString)
{
    using (OleDbConnection connection =
               new OleDbConnection(connectionString))
    {
        OleDbDataAdapter adapter =
            new OleDbDataAdapter(queryString, connection);

        // Set the parameters.
        adapter.SelectCommand.Parameters.Add(
            "@CategoryName", OleDbType.VarChar, 80).Value = "toasters";
        adapter.SelectCommand.Parameters.Add(
            "@SerialNum", OleDbType.Integer).Value = 239;

        // Open the connection and fill the DataSet.
        try
        {
            connection.Open();
            adapter.Fill(dataSet);
        }
        catch (Exception ex)
        {
            Console.WriteLine(ex.Message);
        }
        // The connection is automatically closed when the
        // code exits the using block.
    }
    return dataSet;
}
Public Function GetDataSetFromAdapter( _
    ByVal dataSet As DataSet, ByVal connectionString As String, _
    ByVal queryString As String) As DataSet

    Using connection As New OleDbConnection(connectionString)
        Dim adapter As New OleDbDataAdapter(queryString, connection)

        ' Set the parameters.
        adapter.SelectCommand.Parameters.Add( _
            "@CategoryName", OleDbType.VarChar, 80).Value = "toasters"
        adapter.SelectCommand.Parameters.Add( _
         "@SerialNum", OleDbType.Integer).Value = 239

        ' Open the connection and fill the DataSet.
        Try
            connection.Open()
            adapter.Fill(dataSet)
        Catch ex As Exception
            Console.WriteLine(ex.Message)
        End Try
        ' The connection is automatically closed when the
        ' code exits the Using block.
    End Using

    Return dataSet
End Function

Комментарии

OLE DB.NET Framework поставщик данных использует позиционные параметры, которые помечены знаком вопроса (?) вместо именованных параметров.The OLE DB.NET Framework Data Provider uses positional parameters that are marked with a question mark (?) instead of named parameters.

При запросе к базе данных, использование поставщика Microsoft OLE DB для Oracle (MSDAORA) и DB.NET Framework поставщика данных OLE, используя LIKE для запроса значений в полях фиксированной длины могут не возвращать все ожидаемые соответствия.When querying an Oracle database using the Microsoft OLE DB Provider for Oracle (MSDAORA) and the OLE DB.NET Framework Data Provider, using the LIKE clause to query values in fixed-length fields may not return all expected matches. Причина том, что когда Oracle соответствует значения полей фиксированной длины в LIKE предложение, он сопоставляет всю длину строки, включая конечные пробелы.The reason is that when Oracle matches values for fixed-length fields in a LIKE clause, it matches the entire length of the string, including any padding trailing spaces. Например, если таблицы в базу данных Oracle содержит поле с именем «Field1», которая определена как char(3), и введите значение «» в строку этой таблицы, следующий код не возвращает строки.For example, if a table in an Oracle database contains a field named "Field1" that is defined as char(3), and you enter the value "a" into a row of that table, the following code does not return the row.

Dim queryString As String = "SELECT * FROM Table1 WHERE Field1 LIKE ?"  
Dim command As OleDbCommand = New OleDbCommand(queryString, connection)  
command.Parameters.Add("@p1", OleDbType.Char, 3).Value = "a"  
Dim reader As OleDbDataReader = command.ExecuteReader()  
string queryString = "SELECT * FROM Table1 WHERE Field1 LIKE ?";  
OleDbCommand command = new OleDbCommand(queryString, connection);  
command.Parameters.Add("@p1", OleDbType.Char, 3).Value = "a";  
OleDbDataReader reader = command.ExecuteReader();  

Это обусловлено Oracle хранит значение столбца, значения «» (padding «», с завершающими пробелами, чтобы в строке 3), который Oracle не считает совпадения для параметра значение «a» в случае использования LIKE сравнения полей фиксированной длины.This is because Oracle stores the column value as "a " (padding "a", with trailing spaces, to the fixed field length of 3), which Oracle does not treat as a match for the parameter value of "a" in the case of a LIKE comparison of fixed-length fields.

Чтобы устранить эту проблему, добавьте подстановочный знак процента («%»), чтобы значение параметра ("a%"), или использовать SQL = сравнения вместо этого.To resolve this problem, append a percentage ("%") wildcard character to the parameter value ("a%"), or use an SQL = comparison instead.

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

OleDbParameter() OleDbParameter() OleDbParameter() OleDbParameter()

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

OleDbParameter(String, Object) OleDbParameter(String, Object) OleDbParameter(String, Object) OleDbParameter(String, Object)

Инициализирует новый экземпляр класса OleDbParameter, использующий имя параметра и значение нового объекта OleDbParameter.Initializes a new instance of the OleDbParameter class that uses the parameter name and the value of the new OleDbParameter.

OleDbParameter(String, OleDbType) OleDbParameter(String, OleDbType) OleDbParameter(String, OleDbType) OleDbParameter(String, OleDbType)

Выполняет инициализацию нового экземпляра класса OleDbParameter, использующего имя параметра и тип данных.Initializes a new instance of the OleDbParameter class that uses the parameter name and data type.

OleDbParameter(String, OleDbType, Int32) OleDbParameter(String, OleDbType, Int32) OleDbParameter(String, OleDbType, Int32) OleDbParameter(String, OleDbType, Int32)

Выполняет инициализацию нового экземпляра класса OleDbParameter, использующего имя параметра, тип данных и длину.Initializes a new instance of the OleDbParameter class that uses the parameter name, data type, and length.

OleDbParameter(String, OleDbType, Int32, ParameterDirection, Boolean, Byte, Byte, String, DataRowVersion, Object) OleDbParameter(String, OleDbType, Int32, ParameterDirection, Boolean, Byte, Byte, String, DataRowVersion, Object) OleDbParameter(String, OleDbType, Int32, ParameterDirection, Boolean, Byte, Byte, String, DataRowVersion, Object) OleDbParameter(String, OleDbType, Int32, ParameterDirection, Boolean, Byte, Byte, String, DataRowVersion, Object)

Инициализирует новый экземпляр класса OleDbParameter, использующий имя параметра, тип данных, длину, имя исходного столбца, направление параметра, точность чисел и другие свойства.Initializes a new instance of the OleDbParameter class that uses the parameter name, data type, length, source column name, parameter direction, numeric precision, and other properties.

OleDbParameter(String, OleDbType, Int32, ParameterDirection, Byte, Byte, String, DataRowVersion, Boolean, Object) OleDbParameter(String, OleDbType, Int32, ParameterDirection, Byte, Byte, String, DataRowVersion, Boolean, Object) OleDbParameter(String, OleDbType, Int32, ParameterDirection, Byte, Byte, String, DataRowVersion, Boolean, Object) OleDbParameter(String, OleDbType, Int32, ParameterDirection, Byte, Byte, String, DataRowVersion, Boolean, Object)

Инициализирует новый экземпляр класса OleDbParameter, использующий имя параметра, тип данных, длину, имя исходного столбца, направление параметра, точность чисел и другие свойства.Initializes a new instance of the OleDbParameter class that uses the parameter name, data type, length, source column name, parameter direction, numeric precision, and other properties.

OleDbParameter(String, OleDbType, Int32, String) OleDbParameter(String, OleDbType, Int32, String) OleDbParameter(String, OleDbType, Int32, String) OleDbParameter(String, OleDbType, Int32, String)

Выполняет инициализацию нового экземпляра класса OleDbParameter, использующего имя параметра, тип данных, длину и имя столбца источника.Initializes a new instance of the OleDbParameter class that uses the parameter name, data type, length, and source column name.

Свойства

DbType DbType DbType DbType

Возвращает или устанавливает тип DbType параметра.Gets or sets the DbType of the parameter.

Direction Direction Direction Direction

Возвращает или задает значение, определяющее, предназначен ли параметр только для ввода, только для вывода, является ли он двунаправленным или возвращается хранимой процедурой.Gets or sets a value that indicates whether the parameter is input-only, output-only, bidirectional, or a stored procedure return-value parameter.

IsNullable IsNullable IsNullable IsNullable

Возвращает или задает значение, указывающее, принимает ли этот параметр значения NULL.Gets or sets a value that indicates whether the parameter accepts null values.

Offset Offset Offset Offset
OleDbType OleDbType OleDbType OleDbType

Возвращает или устанавливает тип OleDbType параметра.Gets or sets the OleDbType of the parameter.

ParameterName ParameterName ParameterName ParameterName

Возвращает или задает имя таблицы для объекта OleDbParameter.Gets or sets the name of the OleDbParameter.

Precision Precision Precision Precision

Возвращает или задает максимальное число разрядов, используемых для представления свойства Value.Gets or sets the maximum number of digits used to represent the Value property.

Scale Scale Scale Scale

Возвращает или задает число десятичных разрядов, до которых вычисляется значение Value.Gets or sets the number of decimal places to which Value is resolved.

Size Size Size Size

Возвращает или задает максимальную длину данных (в байтах) в столбце.Gets or sets the maximum size, in bytes, of the data within the column.

SourceColumn SourceColumn SourceColumn SourceColumn

Возвращает или задает имя исходного столбца, сопоставленного DataSet и используемого для загрузки или возвращения значения Value.Gets or sets the name of the source column mapped to the DataSet and used for loading or returning the Value.

SourceColumnNullMapping SourceColumnNullMapping SourceColumnNullMapping SourceColumnNullMapping

Возвращает или задает значение, показывающее, допускает ли исходный столбец значение NULL.Sets or gets a value which indicates whether the source column is nullable. Это позволяет DbCommandBuilder правильно создавать инструкции Update для столбцов со значением NULL.This allows DbCommandBuilder to correctly generate Update statements for nullable columns.

SourceVersion SourceVersion SourceVersion SourceVersion

Возвращает или задает значение DataRowVersion, используемое при загрузке Value.Gets or sets the DataRowVersion to use when you load Value.

Value Value Value Value

Возвращает или задает значение параметра.Gets or sets the value of the parameter.

Методы

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)
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)
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)
ResetDbType() ResetDbType() ResetDbType() ResetDbType()

Сбрасывает тип, связанный с параметром OleDbParameter.Resets the type associated with this OleDbParameter.

ResetOleDbType() ResetOleDbType() ResetOleDbType() ResetOleDbType()

Сбрасывает тип, связанный с параметром OleDbParameter.Resets the type associated with this OleDbParameter.

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

Возвращает строку, содержащую имя ParameterName.Gets a string that contains the ParameterName.

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

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

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

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

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