Condividi tramite


OracleParameter Classe

Definizione

Rappresenta un parametro di un oggetto OracleCommand e, facoltativamente, il relativo mapping a un oggetto DataColumn. La classe non può essere ereditata.

public ref class OracleParameter sealed : MarshalByRefObject, ICloneable, System::Data::IDbDataParameter
public ref class OracleParameter sealed : System::Data::Common::DbParameter, ICloneable
[System.ComponentModel.TypeConverter(typeof(System.Data.OracleClient.OracleParameter+OracleParameterConverter))]
public sealed class OracleParameter : MarshalByRefObject, ICloneable, System.Data.IDbDataParameter
[System.ComponentModel.TypeConverter(typeof(System.Data.OracleClient.OracleParameter+OracleParameterConverter))]
public sealed class OracleParameter : System.Data.Common.DbParameter, ICloneable
[<System.ComponentModel.TypeConverter(typeof(System.Data.OracleClient.OracleParameter+OracleParameterConverter))>]
type OracleParameter = class
    inherit MarshalByRefObject
    interface IDbDataParameter
    interface IDataParameter
    interface ICloneable
[<System.ComponentModel.TypeConverter(typeof(System.Data.OracleClient.OracleParameter+OracleParameterConverter))>]
type OracleParameter = class
    inherit DbParameter
    interface ICloneable
    interface IDbDataParameter
    interface IDataParameter
Public NotInheritable Class OracleParameter
Inherits MarshalByRefObject
Implements ICloneable, IDbDataParameter
Public NotInheritable Class OracleParameter
Inherits DbParameter
Implements ICloneable
Ereditarietà
OracleParameter
Ereditarietà
Attributi
Implementazioni

Esempio

Nell'esempio seguente vengono create più istanze di OracleParameter tramite all'interno OracleParameterCollection di OracleDataAdapter. Questi parametri vengono usati per selezionare i dati dal database e inserire i dati in DataSet. In questo esempio si presuppone che sia già stato creato un oggetto DataSet e OracleDataAdapter usando lo schema, i comandi e la connessione appropriati.

public void AddOracleParameters()
 {
 // ...
 // create dataSet and adapter
 // ...
   adapter.SelectCommand.Parameters.Add("pEName", OracleType.VarChar, 80).Value = "Smith";
   adapter.SelectCommand.Parameters.Add("pEmpNo", OracleType.Int32).Value = 7369;
   adapter.Fill(dataSet);
 }
Public Sub AddOracleParameters()
    ' ...
    ' create dataSet and adapter
    ' ...
adapter.SelectCommand.Parameters.Add("pEName", OracleType.VarChar, 80).Value = "Smith"
adapter.SelectCommand.Parameters.Add("pEmpNo", OracleType.Int32).Value = 7369
adapter.Fill(dataSet)
End Sub

Commenti

I nomi dei parametri non fanno distinzione tra maiuscole e minuscole.

Quando si eseguono query su un database Oracle usando il provider Microsoft OLE DB per Oracle (MSDAORA) e il provider di dati ODBC.NET Framework, l'uso della LIKE clausola per eseguire query sui valori nei campi a lunghezza fissa potrebbe non restituire tutte le corrispondenze previste. Il motivo è che quando Oracle corrisponde ai valori per i campi a lunghezza fissa in una LIKE clausola , corrisponde all'intera lunghezza della stringa, inclusi gli spazi finali di riempimento. Ad esempio, se una tabella in un database Oracle contiene un campo denominato "Field1" definito come char(3)e si immette il valore "a" in una riga di tale tabella, il codice seguente non restituirà la riga.

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

Questo avviene perché Oracle archivia il valore della colonna come "a" (riempimento "a", con spazi finali, alla lunghezza fissa del campo pari a 3), che Oracle non considera come una corrispondenza per il valore del parametro "a" nel caso di un LIKE confronto di campi a lunghezza fissa.

Per risolvere questo problema, aggiungere un carattere jolly percentuale ("%") al valore del parametro ("a%") o usare invece un confronto SQL = .

Costruttori

OracleParameter()

Inizializza una nuova istanza della classe OracleParameter.

OracleParameter(String, Object)

Inizializza una nuova istanza della classe OracleParameter che utilizza il nome del parametro e un oggetto OracleParameter.

OracleParameter(String, OracleType)

Inizializza una nuova istanza della classe OracleParameter che utilizza il nome del parametro e il tipo di dati.

OracleParameter(String, OracleType, Int32)

Inizializza una nuova istanza della classe OracleParameter che utilizza il nome del parametro, il tipo di dati e la lunghezza.

OracleParameter(String, OracleType, Int32, ParameterDirection, Boolean, Byte, Byte, String, DataRowVersion, Object)

Inizializza una nuova istanza della classe OracleParameter che usa il nome del parametro, il tipo di dati, la lunghezza, il nome della colonna di origine, la direzione del parametro, la precisione numerica e altre proprietà.

OracleParameter(String, OracleType, Int32, ParameterDirection, String, DataRowVersion, Boolean, Object)

Inizializza una nuova istanza della classe OracleParameter che utilizza il nome del parametro, il tipo di dati, la dimensione, la direzione, la colonna di origine, la versione dell'origine e altre proprietà.

OracleParameter(String, OracleType, Int32, String)

Inizializza una nuova istanza della classe OracleParameter che utilizza il nome del parametro, il tipo di dati, la lunghezza e il nome della colonna di origine.

Proprietà

DbType

Ottiene o imposta l'oggetto DbType del parametro.

Direction

Ottiene o imposta un valore che indica se il parametro è di solo input, di solo output, bidirezionale o un parametro di un valore restituito da una stored procedure.

IsNullable

Ottiene o imposta un valore che indica se il parametro ammette valori Null.

Offset

Ottiene o imposta l'offset per la proprietà Value.

OracleType

Ottiene o imposta l'oggetto OracleType del parametro.

ParameterName

Ottiene o imposta il nome di OracleParameter.

Precision
Obsoleti.

Ottiene o imposta il numero massimo di cifre utilizzate per rappresentare la proprietà Value.

Scale
Obsoleti.

Ottiene o imposta il numero di posizioni decimali in cui viene risolto Value.

Size

Ottiene o imposta le dimensioni massime in byte dei dati contenuti nella colonna.

SourceColumn

Ottiene o imposta il nome della colonna di origine mappata alla classe DataSet e utilizzata per il caricamento o la restituzione della proprietà Value.

SourceColumnNullMapping

Ottiene o imposta un valore che indica se la colonna di origine ammette valori Null. Questo consente a OracleCommandBuilder di generare correttamente istruzioni Update per le colonne nullable.

SourceVersion

Ottiene o imposta l'enumerazione DataRowVersion da utilizzare per il caricamento della proprietà Value.

Value

Ottiene o imposta il valore del parametro.

Metodi

CreateObjRef(Type)

Consente di creare un oggetto che contiene tutte le informazioni rilevanti necessarie per la generazione del proxy utilizzato per effettuare la comunicazione con un oggetto remoto.

(Ereditato da MarshalByRefObject)
Equals(Object)

Determina se l'oggetto specificato è uguale all'oggetto corrente.

(Ereditato da Object)
GetHashCode()

Funge da funzione hash predefinita.

(Ereditato da Object)
GetLifetimeService()
Obsoleti.

Consente di recuperare l'oggetto servizio di durata corrente per controllare i criteri di durata per l'istanza.

(Ereditato da MarshalByRefObject)
GetType()

Ottiene l'oggetto Type dell'istanza corrente.

(Ereditato da Object)
InitializeLifetimeService()
Obsoleti.

Ottiene un oggetto servizio di durata per controllare i criteri di durata per questa istanza.

(Ereditato da MarshalByRefObject)
MemberwiseClone()

Crea una copia superficiale dell'oggetto Object corrente.

(Ereditato da Object)
MemberwiseClone(Boolean)

Crea una copia dei riferimenti dell'oggetto MarshalByRefObject corrente.

(Ereditato da MarshalByRefObject)
ResetDbType()

Reimposta il tipo associato a OracleParameter.

ResetOracleType()

Reimposta il tipo associato a OracleParameter.

ToString()

Ottiene una stringa che contiene ParameterName.

Implementazioni dell'interfaccia esplicita

ICloneable.Clone()

Per una descrizione di questo membro, vedere Clone().

IDbDataParameter.Precision

Indica la precisione dei parametri numerici.

(Ereditato da DbParameter)
IDbDataParameter.Scale

Per una descrizione di questo membro, vedere Scale.

(Ereditato da DbParameter)

Si applica a