Compartir a través de


OdbcParameter Clase

Definición

Representa un parámetro para un OdbcCommand y, de forma opcional, su asignación a una DataColumn. Esta clase no puede heredarse.

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
type OdbcParameter = class
    inherit DbParameter
    interface ICloneable
    interface IDataParameter
    interface IDbDataParameter
[<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
Herencia
OdbcParameter
Herencia
Herencia
OdbcParameter
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 ya se ha creado un DataSet 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

En los nombres de parámetros no se distinguen mayúsculas de minúsculas.

Al consultar una base de datos de Oracle mediante la Proveedor OLE DB de Microsoft para Oracle (MSDAORA) y el proveedor de datos odbc de .NET Framework, es posible que el uso de la LIKE cláusula para consultar valores en 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 en 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 de campo fija de 3), que Oracle no trata como una coincidencia para el valor de parámetro de "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 de parámetro ("a%") o use una comparación de SQL = en su lugar.

Constructores

OdbcParameter()

Inicializa una nueva instancia de la clase OdbcParameter.

OdbcParameter(String, Object)

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

OdbcParameter(String, OdbcType)

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

OdbcParameter(String, OdbcType, Int32)

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

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

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

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

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

OdbcParameter(String, OdbcType, Int32, String)

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

Propiedades

DbType

Obtiene o establece el DbType del parámetro.

Direction

Obtiene o establece un valor que indica si el parámetro es sólo de entrada, sólo de salida, bidireccional, o un valor devuelto de un 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.

Offset

Representa un parámetro para un OdbcCommand y, de forma opcional, su asignación a una DataColumn. Esta clase no puede heredarse.

ParameterName

Obtiene o establece el nombre de OdbcParameter.

Precision

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

Scale

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

Size

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

SourceColumn

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

SourceColumnNullMapping

Obtiene o establece un valor que indica si la columna de origen admite valores NULL. De este modo se permite que DbCommandBuilder genere correctamente instrucciones Update para las columnas que aceptan valores NULL.

SourceVersion

Obtiene o establece la enumeración DataRowVersion que se va a utilizar a la hora de cargar Value.

Value

Obtiene o establece el valor del parámetro.

Métodos

CreateObjRef(Type)

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

(Heredado de MarshalByRefObject)
Equals(Object)

Determina si el objeto especificado es igual que el objeto actual.

(Heredado de Object)
GetHashCode()

Sirve como la función hash predeterminada.

(Heredado de Object)
GetLifetimeService()
Obsoletos.

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()
Obsoletos.

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 Object actual.

(Heredado de Object)
MemberwiseClone(Boolean)

Crea una copia superficial del objeto MarshalByRefObject actual.

(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 la propiedad ParameterName.

Implementaciones de interfaz explícitas

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