OdbcParameter クラス
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
OdbcCommand に対するパラメーターと、必要に応じてその DataColumn 列へのマッピングを表します。 このクラスは継承できません。
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
- 継承
- 継承
- 継承
- 属性
- 実装
例
次の例では、 内で をOdbcParameterCollection介して の複数のOdbcParameterインスタンスを作成しますOdbcDataAdapter。 これらのパラメーターは、データ ソースからデータを選択し、 にデータを配置するために使用されます DataSet。 この例では、 と OdbcDataAdapter がDataSet適切なスキーマ、コマンド、接続を使用して既に作成されていることを前提としています。
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
注釈
パラメーター名の大文字と小文字は区別されません。
Microsoft OLE DB Provider for Oracle (MSDAORA) と ODBC .NET Framework データ プロバイダーを使用して Oracle データベースに対してクエリを実行する場合、 句をLIKE
使用して固定長フィールドの値を照会しても、予期される一致がすべて返されない場合があります。 その理由は、Oracle が句内 LIKE
の固定長フィールドの値と一致する場合、末尾のスペースを埋め込むなど、文字列の長さの全体と一致します。 たとえば、Oracle データベース内のテーブルに として定義 char(3)
されている "Field1" という名前のフィールドが含まれており、そのテーブルの行に値 "a" を入力した場合、次のコードは行を返しません。
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();
これは、Oracle が列の値を "a" (末尾のスペースを含む "a" を 3 の固定フィールド長に埋め込む) として格納するためです。固定長フィールドの比較の場合 LIKE
、Oracle は "a" のパラメーター値との一致として扱いません。
この問題を解決するには、パーセント ("%") ワイルドカード文字をパラメーター値 () に追加するか、"a%"
代わりに SQL =
比較を使用します。
コンストラクター
OdbcParameter() |
OdbcParameter クラスの新しいインスタンスを初期化します。 |
OdbcParameter(String, Object) |
パラメーター名と OdbcParameter オブジェクトを指定して、OdbcParameter クラスの新しいインスタンスを初期化します。 |
OdbcParameter(String, OdbcType) |
パラメーター名とデータ型を指定して、OdbcParameter クラスの新しいインスタンスを初期化します。 |
OdbcParameter(String, OdbcType, Int32) |
パラメーター名、データ型、および長さを指定して、OdbcParameter クラスの新しいインスタンスを初期化します。 |
OdbcParameter(String, OdbcType, Int32, ParameterDirection, Boolean, Byte, Byte, String, DataRowVersion, Object) |
パラメーター名、データ型、長さ、ソース列名、パラメーターの方向、数値の有効桁数、およびその他のプロパティを使用する OdbcParameter クラスの新しいインスタンスを初期化します。 |
OdbcParameter(String, OdbcType, Int32, ParameterDirection, Byte, Byte, String, DataRowVersion, Boolean, Object) |
パラメーター名、データ型、長さ、ソース列名、パラメーターの方向、数値の有効桁数、およびその他のプロパティを使用する OdbcParameter クラスの新しいインスタンスを初期化します。 |
OdbcParameter(String, OdbcType, Int32, String) |
パラメーター名、データ型、長さ、およびソース列名を指定して、OdbcParameter クラスの新しいインスタンスを初期化します。 |
プロパティ
DbType |
パラメーターの DbType を取得または設定します。 |
Direction |
パラメーターが入力専用、出力専用、双方向、またはストアド プロシージャの戻り値パラメーターのいずれであるかを示す値を取得または設定します。 |
IsNullable |
パラメーターが null 値を受け取るかどうかを示す値を取得または設定します。 |
OdbcType |
パラメーターの OdbcType を取得または設定します。 |
Offset |
OdbcCommand に対するパラメーターと、必要に応じてその DataColumn 列へのマッピングを表します。 このクラスは継承できません。 |
ParameterName |
OdbcParameter の名前を取得または設定します。 |
Precision |
Value プロパティを表すときに使用する桁数を取得または設定します。 |
Scale |
Value が解決される、小数点以下の桁数を取得または設定します。 |
Size |
列内のデータの最大サイズを取得または設定します。 |
SourceColumn | |
SourceColumnNullMapping |
ソース列が Null 許容かどうかを示す値を取得または設定します。 DbCommandBuilder は、これを使用することにより、null 許容の列に対する Update ステートメントを正しく生成できます。 |
SourceVersion |
DataRowVersion の読み込み時に使用する Value を取得または設定します。 |
Value |
パラメーターの値を取得または設定します。 |
メソッド
CreateObjRef(Type) |
リモート オブジェクトとの通信に使用するプロキシの生成に必要な情報をすべて格納しているオブジェクトを作成します。 (継承元 MarshalByRefObject) |
Equals(Object) |
指定されたオブジェクトが現在のオブジェクトと等しいかどうかを判断します。 (継承元 Object) |
GetHashCode() |
既定のハッシュ関数として機能します。 (継承元 Object) |
GetLifetimeService() |
古い.
対象のインスタンスの有効期間ポリシーを制御する、現在の有効期間サービス オブジェクトを取得します。 (継承元 MarshalByRefObject) |
GetType() |
現在のインスタンスの Type を取得します。 (継承元 Object) |
InitializeLifetimeService() |
古い.
このインスタンスの有効期間ポリシーを制御する有効期間サービス オブジェクトを取得します。 (継承元 MarshalByRefObject) |
MemberwiseClone() |
現在の Object の簡易コピーを作成します。 (継承元 Object) |
MemberwiseClone(Boolean) |
現在の MarshalByRefObject オブジェクトの簡易コピーを作成します。 (継承元 MarshalByRefObject) |
ResetDbType() |
この OdbcParameter に関連付けられている型をリセットします。 |
ResetOdbcType() |
この OdbcParameter に関連付けられている型をリセットします。 |
ToString() |
ParameterName を表す文字列を取得します。 |
明示的なインターフェイスの実装
ICloneable.Clone() |
このメンバーの詳細については、「Clone()」をご覧ください。 |
IDbDataParameter.Precision |
数値パラメーターの精度を示します。 (継承元 DbParameter) |
IDbDataParameter.Scale |
このメンバーの詳細については、「Scale」をご覧ください。 (継承元 DbParameter) |
適用対象
こちらもご覧ください
.NET