OdbcParameter Clase

Definición

Representa un parámetro a OdbcCommand y, opcionalmente, su asignación a .DataColumn Esta clase no puede heredarse.

public ref class OdbcParameter sealed : MarshalByRefObject, ICloneable, System::Data::IDbDataParameter
public ref class OdbcParameter sealed : 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
[<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 MarshalByRefObject
Implements ICloneable, IDbDataParameter
Public NotInheritable Class OdbcParameter
Inherits DbParameter
Implements ICloneable
Herencia
OdbcParameter
Herencia
Atributos
Implementaciones

Ejemplos

En el ejemplo siguiente se crean varias instancias de a través de OdbcParameterOdbcParameterCollection dentro de .OdbcDataAdapter Estos parámetros se usan para seleccionar datos del origen de datos y colocar los datos en DataSet. En este ejemplo se supone que DataSet ya se ha creado y OdbcDataAdapter mediante el esquema, los comandos y la conexión adecuados.

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

Comentarios

Los nombres de parámetro no distinguen mayúsculas de minúsculas.

Al consultar una base de datos de Oracle mediante el proveedor OLE DB de Microsoft para Oracle (MSDAORA) y la Proveedor de datos ODBC .NET Framework, es posible que el uso de la cláusula LIKE para consultar los valores de los campos de longitud fija no devuelva todas las coincidencias esperadas. El motivo es que cuando Oracle coincide con los valores de los campos de longitud fija de una LIKE cláusula , coincide con toda la longitud de la cadena, incluidos los espacios finales de relleno. Por ejemplo, si una tabla de una base de datos de Oracle contiene un campo denominado "Field1" que se define como char(3)y escribe el valor "a" en una fila de esa tabla, el código siguiente no devolverá la fila.

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

Esto se debe a que Oracle almacena el valor de columna como "a" (relleno "a", con espacios finales, a la longitud fija del campo de 3), que Oracle no trata como una coincidencia para el valor del parámetro "a" en el caso de una LIKE comparación de campos de longitud fija.

Para resolver este problema, anexe un carácter comodín de porcentaje ("%") al valor del parámetro ("a%") o use en su lugar una comparación de SQL = .

Constructores

Nombre Description
OdbcParameter()

Inicializa una nueva instancia de la clase OdbcParameter.

OdbcParameter(String, Object)

Inicializa una nueva instancia de la OdbcParameter clase que usa el nombre del parámetro y un OdbcParameter objeto .

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

Inicializa una nueva instancia de la OdbcParameter clase que usa el nombre del parámetro, el tipo de datos, la longitud, el nombre de columna de origen, la dirección del parámetro, la precisión numérica y otras propiedades.

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

Inicializa una nueva instancia de la OdbcParameter clase que usa el nombre del parámetro, el tipo de datos, la longitud, el nombre de columna de origen, la dirección del parámetro, la precisión numérica y otras propiedades.

OdbcParameter(String, OdbcType, Int32, String)

Inicializa una nueva instancia de la OdbcParameter clase que usa el nombre del parámetro, el tipo de datos, la longitud y el nombre de columna de origen.

OdbcParameter(String, OdbcType, Int32)

Inicializa una nueva instancia de la OdbcParameter clase que usa el nombre del parámetro, el tipo de datos y la longitud.

OdbcParameter(String, OdbcType)

Inicializa una nueva instancia de la OdbcParameter clase que usa el nombre de parámetro y el tipo de datos.

Propiedades

Nombre Description
DbType

Obtiene o establece el DbType del parámetro .

Direction

Obtiene o establece un valor que indica si el parámetro es de solo entrada, solo salida, bidireccional o un parámetro de valor devuelto de procedimiento almacenado.

IsNullable

Obtiene o establece un valor que indica si el parámetro acepta valores NULL.

OdbcType

Obtiene o establece el OdbcType del parámetro .

ParameterName

Obtiene o establece el nombre de .OdbcParameter

Precision

Obtiene o establece el número de dígitos usados para representar la Value propiedad .

Scale

Obtiene o establece el número de posiciones decimales en las que Value se resuelve.

Size

Obtiene o establece el tamaño máximo de los datos dentro de la columna.

SourceColumn

Obtiene o establece el nombre de la columna de origen asignada a DataSet y utilizada para cargar o devolver .Value

SourceColumnNullMapping

Obtiene o establece un valor que indica si la columna de origen admite valores NULL. Esto permite DbCommandBuilder generar correctamente instrucciones Update para columnas que aceptan valores NULL.

SourceVersion

Obtiene o establece el objeto DataRowVersion que se va a usar al cargar Value.

Value

Obtiene o establece el valor del parámetro .

Métodos

Nombre Description
CreateObjRef(Type)

Crea un objeto que contiene toda la información pertinente necesaria para generar un proxy usado para comunicarse con un objeto remoto.

(Heredado de MarshalByRefObject)
Equals(Object)

Determina si el objeto especificado es igual al objeto actual.

(Heredado de Object)
GetHashCode()

Actúa como la función hash predeterminada.

(Heredado de Object)
GetLifetimeService()

Recupera el objeto de servicio de duración actual que controla la directiva de duración de esta instancia.

(Heredado de MarshalByRefObject)
GetType()

Obtiene el Type de la instancia actual.

(Heredado de Object)
InitializeLifetimeService()

Obtiene un objeto de servicio de duración para controlar la directiva de duración de esta instancia.

(Heredado de MarshalByRefObject)
MemberwiseClone()

Crea una copia superficial del Objectactual.

(Heredado de Object)
MemberwiseClone(Boolean)

Crea una copia superficial del objeto actual MarshalByRefObject .

(Heredado de MarshalByRefObject)
ResetDbType()

Restablece el tipo asociado a este OdbcParameter.

ResetOdbcType()

Restablece el tipo asociado a este OdbcParameter.

ToString()

Obtiene una cadena que contiene .ParameterName

Implementaciones de interfaz explícitas

Nombre Description
ICloneable.Clone()

Para obtener una descripción de este miembro, vea Clone().

IDbDataParameter.Precision

Indica la precisión de los parámetros numéricos.

(Heredado de DbParameter)
IDbDataParameter.Scale

Para obtener una descripción de este miembro, vea Scale.

(Heredado de DbParameter)

Se aplica a

Consulte también