OracleParameter Klasse
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Stellt einen Parameter für einen OracleCommand und optional für seine Zuordnung zu einer DataColumn dar. Diese Klasse kann nicht vererbt werden.
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
- Vererbung
- Vererbung
- Attribute
- Implementiert
Beispiele
Im folgenden Beispiel werden mehrere Instanzen von OracleParameter über die OracleParameterCollection innerhalb von OracleDataAdaptererstellt. Diese Parameter werden verwendet, um Daten aus der Datenbank auszuwählen und die Daten in der DataSetzu platzieren. In diesem Beispiel wird davon ausgegangen, dass bereits ein DataSet und mithilfe OracleDataAdapter des entsprechenden Schemas, der entsprechenden Befehle und der entsprechenden Verbindung erstellt wurden.
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
Hinweise
Bei Parameternamen wird die Groß-/Kleinschreibung nicht beachtet.
Beim Abfragen einer Oracle-Datenbank mithilfe des Microsoft OLE DB-Anbieter für Oracle (MSDAORA) und des ODBC.NET Framework-Datenanbieters gibt die Verwendung der -Klausel zum Abfragen von LIKE
Werten in Feldern mit fester Länge möglicherweise nicht alle erwarteten Übereinstimmungen zurück. Der Grund ist, dass Oracle, wenn Werte für Felder mit fester Länge in einer LIKE
-Klausel abgleicht, die gesamte Länge der Zeichenfolge einschließlich aller nachgestellten Leerzeichen übereinstimmt. Wenn beispielsweise eine Tabelle in einer Oracle-Datenbank ein Feld mit dem Namen "Field1" enthält, das als char(3)
definiert ist, und Sie den Wert "a" in eine Zeile dieser Tabelle eingeben, gibt der folgende Code die Zeile nicht zurück.
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();
Dies liegt daran, dass Oracle den Spaltenwert als "a" (Abstand von "a" mit nachgestellten Leerzeichen zur festen Feldlänge von 3) speichert, was Oracle bei einem LIKE
Vergleich von Feldern mit fester Länge nicht als Übereinstimmung für den Parameterwert "a" behandelt.
Um dieses Problem zu beheben, fügen Sie ein Prozentzeichen ("%") an den Parameterwert ("a%"
) an, oder verwenden Sie stattdessen einen SQL-Vergleich =
.
Konstruktoren
OracleParameter() |
Initialisiert eine neue Instanz der OracleParameter-Klasse. |
OracleParameter(String, Object) |
Initialisiert eine neue Instanz der OracleParameter-Klasse, die den Parameternamen und ein OracleParameter-Objekt verwendet. |
OracleParameter(String, OracleType) |
Initialisiert eine neue Instanz der OracleParameter-Klasse, die den Parameternamen und den Datentyp verwendet. |
OracleParameter(String, OracleType, Int32) |
Initialisiert eine neue Instanz der OracleParameter-Klasse, die den Parameternamen, den Datentyp und die Länge verwendet. |
OracleParameter(String, OracleType, Int32, ParameterDirection, Boolean, Byte, Byte, String, DataRowVersion, Object) |
Initialisiert eine neue Instanz der OracleParameter-Klasse, die Parametername, Datentyp, Länge, Quellspaltenname, Richtung des Parameters, numerische Genauigkeit und andere Eigenschaften verwendet. |
OracleParameter(String, OracleType, Int32, ParameterDirection, String, DataRowVersion, Boolean, Object) |
Initialisiert eine neue Instanz der OracleParameter-Klasse, die den Parameternamen, den Datentyp, die Größe, die Richtung, die Quellspalte, die Quellversion sowie andere Eigenschaften verwendet. |
OracleParameter(String, OracleType, Int32, String) |
Initialisiert eine neue Instanz der OracleParameter-Klasse, die den Parameternamen, den Datentyp, die Länge und den Quellspaltennamen verwendet. |
Eigenschaften
DbType |
Ruft den DbType des Parameters ab oder legt ihn fest. |
Direction |
Ruft einen Wert ab oder legt einen Wert fest, der angibt, ob der Parameter nur zur Eingabe, nur zur Ausgabe oder bidirektional verwendet wird oder ob es sich um einen Parameter für den Rückgabewert einer gespeicherten Prozedur handelt. |
IsNullable |
Ruft einen Wert ab, der angibt, ob der Parameter NULL-Werte akzeptiert, oder legt diesen fest. |
Offset |
Ruft den Offset zur Value-Eigenschaft ab oder legt diesen fest. |
OracleType |
Ruft den OracleType des Parameters ab oder legt ihn fest. |
ParameterName |
Ruft den Namen der OracleParameter ab oder legt diesen fest. |
Precision |
Veraltet.
Ruft die maximale Anzahl von Stellen ab, die verwendet werden, um die Value-Eigenschaft darzustellen, oder legt diese fest. |
Scale |
Veraltet.
Ruft die Anzahl der Dezimalstellen ab, in die Value aufgelöst wird, oder legt diese fest. |
Size |
Ruft die maximale Größe der Daten in der Spalte in Byte ab oder legt diese fest. |
SourceColumn |
Ruft den Namen der Quellspalte ab, die dem DataSet zugeordnet ist und zum Laden oder Zurückgeben des Value verwendet wird, oder legt diesen fest. |
SourceColumnNullMapping |
Ruft einen Wert ab, der angibt, ob die Quellspalte NULL-Werte zulässt, oder legt diesen fest. Dadurch kann OracleCommandBuilder ordnungsgemäß Update-Anweisungen für Spalten generieren, die NULL-Werte zulassen. |
SourceVersion |
Ruft die DataRowVersion ab, die beim Laden von Value verwendet werden soll, oder legt diese fest. |
Value |
Ruft den Wert des Parameters ab oder legt diesen fest. |
Methoden
CreateObjRef(Type) |
Erstellt ein Objekt mit allen relevanten Informationen, die zum Generieren eines Proxys für die Kommunikation mit einem Remoteobjekt erforderlich sind. (Geerbt von MarshalByRefObject) |
Equals(Object) |
Bestimmt, ob das angegebene Objekt gleich dem aktuellen Objekt ist. (Geerbt von Object) |
GetHashCode() |
Fungiert als Standardhashfunktion. (Geerbt von Object) |
GetLifetimeService() |
Veraltet.
Ruft das aktuelle Lebensdauerdienstobjekt ab, das die Lebensdauerrichtlinien für diese Instanz steuert. (Geerbt von MarshalByRefObject) |
GetType() |
Ruft den Type der aktuellen Instanz ab. (Geerbt von Object) |
InitializeLifetimeService() |
Veraltet.
Ruft ein Lebensdauerdienstobjekt zur Steuerung der Lebensdauerrichtlinie für diese Instanz ab. (Geerbt von MarshalByRefObject) |
MemberwiseClone() |
Erstellt eine flache Kopie des aktuellen Object. (Geerbt von Object) |
MemberwiseClone(Boolean) |
Erstellt eine flache Kopie des aktuellen MarshalByRefObject-Objekts. (Geerbt von MarshalByRefObject) |
ResetDbType() |
Setzt den diesem OracleParameter zugeordneten Typ zurück. |
ResetOracleType() |
Setzt den diesem OracleParameter zugeordneten Typ zurück. |
ToString() |
Ruft eine Zeichenfolge ab, die den ParameterName enthält. |
Explizite Schnittstellenimplementierungen
ICloneable.Clone() |
Eine Beschreibung dieses Elements finden Sie unter Clone(). |
IDbDataParameter.Precision |
Gibt die Genauigkeit numerischer Parameter an. (Geerbt von DbParameter) |
IDbDataParameter.Scale |
Eine Beschreibung dieses Elements finden Sie unter Scale. (Geerbt von DbParameter) |