以下は、パラメーター化された照会を使用して DB2-i (DB2 for iSeries) データベースを照会するコードです。
OdbcConnection conn = new OdbcConnection(connStrSb.ToString());
conn.Open();
var cmd = conn.CreateCommand();
cmd.CommandText= "SELECT * FROM table1 WHERE col1 >= ?";
cmd.Parameters.AddWithValue("ss", "View_Status_Code");
var x = cmd.ExecuteReader();
x.Read();
ここでcol1 は CHAR FOR BIT DATA です
上記のコードは、次の例外をスローします。
ERROR [22018] [IBM][System i Access ODBC Driver]Error in assignment.
以下は、通常のクエリ (パラメーターなし) を使用したコードです。
OdbcConnection conn = new OdbcConnection(connStrSb.ToString());
conn.Open();
var cmd = conn.CreateCommand();
cmd.CommandText = "SELECT * FROM table1 WHERE col1 >= 'View_Status_Code'";
var x = cmd.ExecuteReader();
x.Read();
上記のコードは正常に動作し、結果セットを返します。