OdbcParameter Clase
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
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
- Herencia
- 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 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) |