OdbcCommand.CommandText プロパティとは? わかりやすく解説

Weblio 辞書 > コンピュータ > .NET Framework クラス ライブラリ リファレンス > OdbcCommand.CommandText プロパティの意味・解説 

OdbcCommand.CommandText プロパティ

データ ソースに対して実行する SQL ステートメントまたはストアド プロシージャを取得または設定します。

名前空間: System.Data.Odbc
アセンブリ: System.Data (system.data.dll 内)
構文構文

Public Overrides Property
 CommandText As String
Dim instance As OdbcCommand
Dim value As String

value = instance.CommandText

instance.CommandText = value
public override string CommandText { get;
 set; }
/** @property */
public String get_CommandText ()

/** @property */
public void set_CommandText (String value)

プロパティ値
実行する SQL ステートメントまたはストアド プロシージャ。既定値は空の文字列 ("") です。

解説解説

CommandType プロパティを StoredProcedure に設定した場合、CommandText プロパティは、標準の ODBC ストアド プロシージャのエスケープ シーケンスを使用して設定する必要があります。CommandText にストアド プロシージャの名前を設定しても、他の .NET Framework データ プロバイダのようには機能しません。

多くの言語機能 (外部結合やスカラ関数の呼び出しなど) は、通常、データ ソースによって実装されます。このような機能の構文の多くも、データ ソース固有です。そのため、ODBC では、次の言語機能の標準構文を含むエスケープ シーケンスを定義しています。

ODBC で使用されるエスケープ シーケンスを次に示します。

このエスケープ シーケンスは、ODBC ドライバによって認識および解析されます。エスケープ シーケンスは、後でデータ ソース固有の文法と置き換えられます。

プロシージャは、データ ソースに格納される実行可能オブジェクトです。これは通常、プリコンパイルされた 1 つ以上の SQL ステートメントです。プロシージャ呼び出しのためのエスケープ シーケンスを次に示します。

{[?=]call procedure-name[([parameter][,[parameter]]...)]}

procedure-name にはプロシージャ名を、parameter にはプロシージャのパラメータを指定します。

いずれかの Execute メソッド (ExecuteReader または ExecuteNonQuery など) を呼び出すと、このストアド プロシージャがコマンドによって実行されます。

現在の接続で実行またはフェッチ操作が実行中の場合は、Connection、CommandType、および CommandText プロパティは設定できません。

CommandType を Text に設定した場合、ODBC.NET プロバイダでは、OdbcCommand が呼び出す SQL ステートメントまたはストアド プロシージャにパラメータを渡すための名前付きパラメータを利用できません。この場合は、疑問符 (?) プレースホルダを使用する必要があります。次に例を示します。

SELECT * FROM Customers WHERE CustomerID = ?

したがって、パラメータの疑問符プレースホルダの位置と、OdbcParameter オブジェクトを OdbcParameterCollection に追加する順序とを、正しく対応させる必要があります。

パラメータに null 値が含まれている場合でも、.NET Framework ODBC 用データ プロバイダはそのパラメータをバインドしますが、そのパラメータが SQL_DEFAULT_PARAM を使用して定義されている場合、null 値ではなく既定のパラメータを使用します。たとえば、次の OdbcParameterCollection

{1, null, 2}

が CommandText プロパティに渡されたとします。

{call sp(?, ?, ?)}

この場合、上記の呼び出しを実行すると、.NET Framework ODBC 用データ プロバイダは最初のパラメータを値 1 に、3 番目のパラメータを値 2 にバインドし、2 番目のパラメータを SQL_DEFAULT_PARAM としてバインドします。ただし、この動作は、ドライバによって異なります。ドライバがこの機能をサポートしていない場合、このパラメータには値を渡さないようにします。たとえば、次の OdbcParameterCollection を使用し、

{1, 2}

CommandText プロパティを次のように設定します。

{call sp(?, null, ?)}
メモメモ

パラメータを省略した場合でも、パラメータ間を区切っているコンマはそのまま残しておきます。入力パラメータまたは入出力パラメータを省略した場合、プロシージャは、パラメータの既定値を使用します。入力パラメータまたは入出力パラメータの既定値を指定する別の方法として、そのパラメータに対応した長さ/インジケータ バッファ (length/indicator buffer) の値を SQL_DEFAULT_PARAM に設定することもできます。

プラットフォームプラットフォーム
バージョン情報バージョン情報
参照参照
関連項目
OdbcCommand クラス
OdbcCommand メンバ
System.Data.Odbc 名前空間
Connection
.Data.Odbc.OdbcCommand.CommandTimeout
CommandType
その他の技術情報
Executing a Command


このページでは「.NET Framework クラス ライブラリ リファレンス」からOdbcCommand.CommandText プロパティを検索した結果を表示しています。
Weblioに収録されているすべての辞書からOdbcCommand.CommandText プロパティを検索する場合は、下記のリンクをクリックしてください。
 全ての辞書からOdbcCommand.CommandText プロパティ を検索

英和和英テキスト翻訳

英語⇒日本語日本語⇒英語

辞書ショートカット

すべての辞書の索引

「OdbcCommand.CommandText プロパティ」の関連用語

OdbcCommand.CommandText プロパティのお隣キーワード
検索ランキング

   

英語⇒日本語
日本語⇒英語
   



OdbcCommand.CommandText プロパティのページの著作権

   
日本マイクロソフト株式会社日本マイクロソフト株式会社
© 2026 Microsoft.All rights reserved.

©2026 GRAS Group, Inc.RSS