OracleParameter Třída
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Představuje parametr objektu OracleCommand a volitelně jeho mapování na DataColumn. Tato třída se nemůže dědit.
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
- Dědičnost
- Dědičnost
- Atributy
- Implementuje
Příklady
Následující příklad vytvoří více instancí objektu OracleParameter prostřednictvím objektu OracleParameterCollection v rámci objektu OracleDataAdapter. Tyto parametry slouží k výběru dat z databáze a jejich umístění do DataSet. V tomto příkladu se předpokládá, že DataSet objekty a OracleDataAdapter již byly vytvořeny pomocí příslušného schématu, příkazů a připojení.
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
Poznámky
V názvech parametrů se nerozlišují malá a velká písmena.
Při dotazování databáze Oracle pomocí Zprostředkovatel Microsoft OLE DB pro Oracle (MSDAORA) a zprostředkovatele dat ODBC.NET Framework nemusí použití LIKE
klauzule k dotazování na hodnoty v polích s pevnou délkou vrátit všechny očekávané shody. Důvodem je to, že když Oracle porovnává hodnoty polí s pevnou délkou LIKE
v klauzuli, odpovídá celé délce řetězce, včetně odsazení koncových mezer. Pokud například tabulka v databázi Oracle obsahuje pole s názvem "Pole1", které je definováno jako char(3)
, a zadáte hodnotu "a" do řádku této tabulky, následující kód tento řádek nevrátí.
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();
Je to proto, že Oracle ukládá hodnotu sloupce jako "a" (odsazení "a" s koncovými mezerami s pevnou délkou pole 3), což Oracle v případě LIKE
porovnání polí s pevnou délkou nebere jako shodu pro hodnotu parametru "a".
Chcete-li tento problém vyřešit, připojte k hodnotě parametru () zástupný znak procenta ("a%"
"%") nebo místo toho použijte porovnání SQL =
.
Konstruktory
OracleParameter() |
Inicializuje novou instanci OracleParameter třídy . |
OracleParameter(String, Object) |
Inicializuje novou instanci OracleParameter třídy, která používá název parametru OracleParameter a objekt. |
OracleParameter(String, OracleType) |
Inicializuje novou instanci OracleParameter třídy, která používá název parametru a datový typ. |
OracleParameter(String, OracleType, Int32) |
Inicializuje novou instanci OracleParameter třídy, která používá název parametru, datový typ a délku. |
OracleParameter(String, OracleType, Int32, ParameterDirection, Boolean, Byte, Byte, String, DataRowVersion, Object) |
Inicializuje novou instanci třídy, která používá název parametru, datový typ, délku, název zdrojového OracleParameter sloupce, směr parametru, přesnost čísel a další vlastnosti. |
OracleParameter(String, OracleType, Int32, ParameterDirection, String, DataRowVersion, Boolean, Object) |
Inicializuje novou instanci OracleParameter třídy, která používá název parametru, datový typ, velikost, směr, zdrojový sloupec, verzi zdroje a další vlastnosti. |
OracleParameter(String, OracleType, Int32, String) |
Inicializuje novou instanci OracleParameter třídy, která používá název parametru, datový typ, délku a název zdrojového sloupce. |
Vlastnosti
DbType |
Získá nebo nastaví DbType parametr . |
Direction |
Získá nebo nastaví hodnotu, která označuje, zda je parametr pouze vstup, pouze výstup, obousměrný nebo uložená procedura vrátit hodnotu parametru. |
IsNullable |
Získá nebo nastaví hodnotu, která označuje, zda parametr přijímá hodnoty null. |
Offset |
Získá nebo nastaví posun vlastnosti Value . |
OracleType |
Získá nebo nastaví OracleType parametr . |
ParameterName |
Získá nebo nastaví název objektu OracleParameter. |
Precision |
Zastaralé.
Získá nebo nastaví maximální počet číslic použitých k reprezentaci Value vlastnosti. |
Scale |
Zastaralé.
Získá nebo nastaví počet desetinných míst, která Value je přeložena. |
Size |
Získá nebo nastaví maximální velikost dat v bajtech v rámci sloupce. |
SourceColumn |
Získá nebo nastaví název zdrojového sloupce mapovaného na DataSet a slouží k načtení nebo vrácení Value. |
SourceColumnNullMapping |
Získá nebo nastaví hodnotu, která označuje, zda zdrojový sloupec je nullable. To umožňuje OracleCommandBuilder správně generovat příkazy Update pro sloupce s možnou hodnotou null. |
SourceVersion |
Získá nebo nastaví na DataRowVersion použití při načtení Value. |
Value |
Získá nebo nastaví hodnotu parametru. |
Metody
CreateObjRef(Type) |
Vytvoří objekt, který obsahuje všechny relevantní informace potřebné k vygenerování proxy sloužící ke komunikaci se vzdáleným objektem. (Zděděno od MarshalByRefObject) |
Equals(Object) |
Určí, zda se zadaný objekt rovná aktuálnímu objektu. (Zděděno od Object) |
GetHashCode() |
Slouží jako výchozí hashovací funkce. (Zděděno od Object) |
GetLifetimeService() |
Zastaralé.
Načte aktuální životnost objektu služby, který řídí zásady životnosti pro tuto instanci. (Zděděno od MarshalByRefObject) |
GetType() |
Type Získá z aktuální instance. (Zděděno od Object) |
InitializeLifetimeService() |
Zastaralé.
Získá životnost objektu služby, který řídí zásady životnosti pro tuto instanci. (Zděděno od MarshalByRefObject) |
MemberwiseClone() |
Vytvoří mělkou kopii aktuálního Objectsouboru . (Zděděno od Object) |
MemberwiseClone(Boolean) |
Vytvoří mělkou kopii aktuálního MarshalByRefObject objektu. (Zděděno od MarshalByRefObject) |
ResetDbType() |
Obnoví typ přidružený k tomuto OracleParameter. |
ResetOracleType() |
Obnoví typ přidružený k tomuto OracleParameter. |
ToString() |
Získá řetězec, který obsahuje ParameterName. |
Explicitní implementace rozhraní
ICloneable.Clone() |
Popis tohoto člena najdete v tématu Clone(). |
IDbDataParameter.Precision |
Označuje přesnost číselných parametrů. (Zděděno od DbParameter) |
IDbDataParameter.Scale |
Popis tohoto člena najdete v tématu Scale. (Zděděno od DbParameter) |