0

アクセスから画像のパスを取得したい

DataTable myTable = new DataTable();
OleDbConnection myConnection = new OleDbConnection(ConfigurationManager.ConnectionStrings["ConnectionString"].ConnectionString);

OleDbCommand myCommand = new OleDbCommand();
myCommand.CommandText = "SELECT ImageName AS 'ImageName', ImagePath AS 'Path' FROM [AImages]  WHERE ID='" + _ID + "'";
myCommand.CommandType = CommandType.Text;
myCommand.Connection = myConnection;

OleDbDataAdapter myAdapter = new OleDbDataAdapter();

myAdapter.SelectCommand = myCommand;
myAdapter.Fill(myTable);

しかし、最後の行で次のようなエラーが発生しました: 条件式のデータ型が一致しません。

4

1 に答える 1

0

問題は ID を渡す方法にあると思われます。代わりにこれを試すことができます。

// note the ID=?
myCommand.CommandText = "SELECT ImageName AS 'ImageName', ImagePath AS 'Path' FROM [AImages]  WHERE ID=?";
myCommand.CommandType = CommandType.Text;

// now a parameter
var pId = new OleDbParameter {Value = _ID};
myCommand.Parameters.Add(pId);

これが役立つことを願っています。

于 2013-05-20T07:33:41.973 に答える