OdbcParameter Klasa
Definicja
Ważne
Niektóre informacje odnoszą się do produktu w wersji wstępnej, który może zostać znacząco zmodyfikowany przed wydaniem. Firma Microsoft nie udziela żadnych gwarancji, jawnych lub domniemanych, w odniesieniu do informacji podanych w tym miejscu.
Reprezentuje parametr do OdbcCommand elementu i opcjonalnie mapowanie na DataColumnwartość . Klasa ta nie może być dziedziczona.
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
- Dziedziczenie
- Dziedziczenie
- Dziedziczenie
- Atrybuty
- Implementuje
Przykłady
W poniższym przykładzie jest tworzonych wiele wystąpień OdbcParameter za pomocą OdbcParameterCollection elementu w obiekcie OdbcDataAdapter. Te parametry służą do wybierania danych ze źródła danych i umieszczania danych w elemecie DataSet. W tym przykładzie założono, że obiekt DataSet i OdbcDataAdapter został już utworzony przy użyciu odpowiedniego schematu, poleceń i połączenia.
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
Uwagi
Nazwy parametrów nie są uwzględniane wielkości liter.
Podczas wykonywania zapytań względem bazy danych Oracle przy użyciu Microsoft OLE DB Provider dla Oracle (MSDAORA) i dostawcy danych ODBC .NET Framework, użycie LIKE
klauzuli do wykonywania zapytań o wartości w polach o stałej długości może nie zwracać wszystkich oczekiwanych dopasowań. Przyczyną jest to, że gdy oracle pasuje do wartości pól o stałej LIKE
długości w klauzuli, pasuje do całej długości ciągu, w tym wszelkich spacji końcowych. Jeśli na przykład tabela w bazie danych Oracle zawiera pole o nazwie "Field1", które jest zdefiniowane jako char(3)
, i wprowadź wartość "a" w wierszu tej tabeli, poniższy kod nie zwróci wiersza.
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();
Dzieje się tak, ponieważ oracle przechowuje wartość kolumny jako "a" (dopełnianie "a", z spacjami końcowymi, do stałej długości pola 3), które Oracle nie traktuje jako dopasowania wartości parametru "a" w przypadku LIKE
porównania pól o stałej długości.
Aby rozwiązać ten problem, dołącz wartość procentową ("%") symbol wieloznaczny do wartości parametru ("a%"
) lub zamiast tego użyj porównania SQL =
.
Konstruktory
OdbcParameter() |
Inicjuje nowe wystąpienie klasy OdbcParameter. |
OdbcParameter(String, Object) |
Inicjuje OdbcParameter nowe wystąpienie klasy, które używa nazwy parametru i OdbcParameter obiektu. |
OdbcParameter(String, OdbcType) |
Inicjuje nowe wystąpienie klasy, które używa nazwy parametru OdbcParameter i typu danych. |
OdbcParameter(String, OdbcType, Int32) |
Inicjuje nowe wystąpienie klasy, które używa nazwy parametru OdbcParameter , typu danych i długości. |
OdbcParameter(String, OdbcType, Int32, ParameterDirection, Boolean, Byte, Byte, String, DataRowVersion, Object) |
Inicjuje nowe wystąpienie klasy, które używa nazwy parametru OdbcParameter , typu danych, długości, nazwy kolumny źródłowej, kierunku parametru, dokładności liczbowej i innych właściwości. |
OdbcParameter(String, OdbcType, Int32, ParameterDirection, Byte, Byte, String, DataRowVersion, Boolean, Object) |
Inicjuje nowe wystąpienie klasy, które używa nazwy parametru OdbcParameter , typu danych, długości, nazwy kolumny źródłowej, kierunku parametru, dokładności liczbowej i innych właściwości. |
OdbcParameter(String, OdbcType, Int32, String) |
Inicjuje nowe wystąpienie klasy, które używa nazwy parametru OdbcParameter , typu danych, długości i nazwy kolumny źródłowej. |
Właściwości
DbType |
Pobiera lub ustawia DbType parametr . |
Direction |
Pobiera lub ustawia wartość wskazującą, czy parametr jest parametrem tylko wejściowym, wyjściowym, dwukierunkowym lub parametrem zwracanej wartości procedury składowanej. |
IsNullable |
Pobiera lub ustawia wartość wskazującą, czy parametr akceptuje wartości null. |
OdbcType |
Pobiera lub ustawia OdbcType parametr . |
Offset |
Reprezentuje parametr do OdbcCommand elementu i opcjonalnie mapowanie na DataColumnwartość . Klasa ta nie może być dziedziczona. |
ParameterName |
Pobiera lub ustawia nazwę elementu OdbcParameter. |
Precision |
Pobiera lub ustawia liczbę cyfr używanych do reprezentowania Value właściwości. |
Scale |
Pobiera lub ustawia liczbę miejsc dziesiętnych, do których Value jest rozpoznawana. |
Size |
Pobiera lub ustawia maksymalny rozmiar danych w kolumnie. |
SourceColumn |
Pobiera lub ustawia nazwę kolumny źródłowej zamapowanej na DataSet element i używany do ładowania lub zwracania Valuewartości . |
SourceColumnNullMapping |
Pobiera lub ustawia wartość wskazującą, czy kolumna źródłowa ma wartość null. DbCommandBuilder Umożliwia to poprawne generowanie instrukcji Update dla kolumn dopuszczanych do wartości null. |
SourceVersion |
Pobiera lub ustawia wartość DataRowVersion do użycia podczas ładowania Value. |
Value |
Pobiera lub ustawia wartość parametru. |
Metody
CreateObjRef(Type) |
Tworzy obiekt zawierający wszystkie istotne informacje wymagane do wygenerowania serwera proxy używanego do komunikowania się z obiektem zdalnym. (Odziedziczone po MarshalByRefObject) |
Equals(Object) |
Określa, czy dany obiekt jest taki sam, jak bieżący obiekt. (Odziedziczone po Object) |
GetHashCode() |
Służy jako domyślna funkcja skrótu. (Odziedziczone po Object) |
GetLifetimeService() |
Przestarzałe.
Pobiera bieżący obiekt usługi okresu istnienia, który kontroluje zasady okresu istnienia dla tego wystąpienia. (Odziedziczone po MarshalByRefObject) |
GetType() |
Type Pobiera bieżące wystąpienie. (Odziedziczone po Object) |
InitializeLifetimeService() |
Przestarzałe.
Uzyskuje obiekt usługi okresu istnienia, aby kontrolować zasady okresu istnienia dla tego wystąpienia. (Odziedziczone po MarshalByRefObject) |
MemberwiseClone() |
Tworzy płytkią kopię bieżącego Objectelementu . (Odziedziczone po Object) |
MemberwiseClone(Boolean) |
Tworzy płytkią kopię bieżącego MarshalByRefObject obiektu. (Odziedziczone po MarshalByRefObject) |
ResetDbType() |
Resetuje typ skojarzony z tym OdbcParameterelementem . |
ResetOdbcType() |
Resetuje typ skojarzony z tym OdbcParameterelementem . |
ToString() |
Pobiera ciąg zawierający ParameterNameelement . |
Jawne implementacje interfejsu
ICloneable.Clone() |
Aby uzyskać opis tego elementu członkowskiego, zobacz Clone(). |
IDbDataParameter.Precision |
Wskazuje dokładność parametrów liczbowych. (Odziedziczone po DbParameter) |
IDbDataParameter.Scale |
Aby uzyskać opis tego elementu członkowskiego, zobacz Scale. (Odziedziczone po DbParameter) |