OdbcParameter Класс

Определение

Представляет параметр и OdbcCommand , при необходимости, его сопоставление с параметром DataColumn. Этот класс не наследуется.

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

Примеры

В следующем примере создается несколько экземпляров OdbcParameterOdbcParameterCollection внутри.OdbcDataAdapter Эти параметры используются для выбора данных из источника данных и размещения данных в них DataSet. В этом примере предполагается, что уже DataSet создано и OdbcDataAdapter создано с помощью соответствующей схемы, команд и подключения.

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

        // Set the parameters.
        adapter.SelectCommand.Parameters.Add(
            "@CategoryName", OdbcType.VarChar, 80).Value = "toasters";
        adapter.SelectCommand.Parameters.Add(
            "@SerialNum", OdbcType.Int).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 OdbcConnection(connectionString)
        Dim adapter As New OdbcDataAdapter(queryString, connection)

        ' Set the parameters.
        adapter.SelectCommand.Parameters.Add( _
            "@CategoryName", OdbcType.VarChar, 80).Value = "toasters"
        adapter.SelectCommand.Parameters.Add( _
         "@SerialNum", OdbcType.Int).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

Комментарии

Имена параметров не учитывает регистр.

При запросе базы данных Oracle с помощью предложения Microsoft OLE DB Provider for Oracle (MSDAORA) и ODBC .NET Framework Data Provider, используя предложение LIKE для запроса значений в полях фиксированной длины, может не возвращать все ожидаемые совпадения. Причина в том, что при совпадении значений Oracle для полей фиксированной длины в LIKE предложении он соответствует всей длине строки, включая все конечные пробелы. Например, если таблица в базе данных Oracle содержит поле с именем Field1, которое определено как char(3), и введите значение "a" в строку этой таблицы, следующий код не вернет строку.

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 сохраняет значение столбца как "a" (заполнение "a", с конечными пробелами в фиксированной длине поля 3), которое Oracle не рассматривает как совпадение значения параметра "a" в случае LIKE сравнения полей фиксированной длины.

Чтобы устранить эту проблему, добавьте знак подстановочного знака ("%") к значению параметра ("a%") или используйте сравнение SQL = .

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

Имя Описание
OdbcParameter()

Инициализирует новый экземпляр класса OdbcParameter.

OdbcParameter(String, Object)

Инициализирует новый экземпляр OdbcParameter класса, использующего имя параметра и OdbcParameter объект.

OdbcParameter(String, OdbcType, Int32, ParameterDirection, Boolean, Byte, Byte, String, DataRowVersion, Object)

Инициализирует новый экземпляр класса, использующего имя параметра, тип данных, длину, имя исходного OdbcParameter столбца, направление параметра, числовую точность и другие свойства.

OdbcParameter(String, OdbcType, Int32, ParameterDirection, Byte, Byte, String, DataRowVersion, Boolean, Object)

Инициализирует новый экземпляр класса, использующего имя параметра, тип данных, длину, имя исходного OdbcParameter столбца, направление параметра, числовую точность и другие свойства.

OdbcParameter(String, OdbcType, Int32, String)

Инициализирует новый экземпляр класса, использующего имя параметра, тип данных, длину и имя исходного OdbcParameter столбца.

OdbcParameter(String, OdbcType, Int32)

Инициализирует новый экземпляр OdbcParameter класса, использующего имя параметра, тип данных и длину.

OdbcParameter(String, OdbcType)

Инициализирует новый экземпляр OdbcParameter класса, использующего имя параметра и тип данных.

Свойства

Имя Описание
DbType

Возвращает или задает DbType параметр.

Direction

Возвращает или задает значение, указывающее, является ли параметр возвращаемым значением только входных данных, только выходом, двунаправленным или возвращаемым параметром хранимой процедуры.

IsNullable

Возвращает или задает значение, указывающее, принимает ли параметр значения NULL.

OdbcType

Возвращает или задает OdbcType параметр.

ParameterName

Возвращает или задает имя OdbcParameterобъекта .

Precision

Возвращает или задает число цифр, используемых для представления Value свойства.

Scale

Возвращает или задает число десятичных разрядов, для которых Value разрешено.

Size

Возвращает или задает максимальный размер данных в столбце.

SourceColumn

Возвращает или задает имя исходного столбца, сопоставленного с DataSet и используемым для загрузки или возврата Value.

SourceColumnNullMapping

Возвращает или задает значение, указывающее, является ли исходный столбец пустым. Это позволяет DbCommandBuilder правильно создавать инструкции Update для столбцов, допускающих значение NULL.

SourceVersion

Возвращает или задает значение, используемое при загрузке DataRowVersionValue.

Value

Возвращает или задает значение параметра.

Методы

Имя Описание
CreateObjRef(Type)

Создает объект, содержащий все соответствующие сведения, необходимые для создания прокси-сервера, используемого для взаимодействия с удаленным объектом.

(Унаследовано от MarshalByRefObject)
Equals(Object)

Определяет, равен ли указанный объект текущему объекту.

(Унаследовано от Object)
GetHashCode()

Служит хэш-функцией по умолчанию.

(Унаследовано от Object)
GetLifetimeService()
Устаревшие..

Извлекает текущий объект службы времени существования, который управляет политикой времени существования для этого экземпляра.

(Унаследовано от MarshalByRefObject)
GetType()

Возвращает Type текущего экземпляра.

(Унаследовано от Object)
InitializeLifetimeService()
Устаревшие..

Получает объект службы времени существования для управления политикой времени существования для этого экземпляра.

(Унаследовано от MarshalByRefObject)
MemberwiseClone()

Создает неглубокую копию текущей Object.

(Унаследовано от Object)
MemberwiseClone(Boolean)

Создает неглубокую копию текущего MarshalByRefObject объекта.

(Унаследовано от MarshalByRefObject)
ResetDbType()

Сбрасывает тип, связанный с этим OdbcParameter.

ResetOdbcType()

Сбрасывает тип, связанный с этим OdbcParameter.

ToString()

Возвращает строку, содержащую объект ParameterName.

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

Имя Описание
ICloneable.Clone()

Описание этого элемента см. в разделе Clone().

IDbDataParameter.Precision

Указывает точность числовых параметров.

(Унаследовано от DbParameter)
IDbDataParameter.Scale

Описание этого элемента см. в разделе Scale.

(Унаследовано от DbParameter)

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

См. также раздел