Missing operand

lexxkar
Дата: 17.11.2004 15:55:49
Уважаемые господа!!!!

...делю Web-страничку на ASP.NET.(C#)
имеется код->

string strOleDb;
string querystr = @"SELECT *FROM mycur WHERE Subs_code = @nomer";
strOleDb =@"Provider=VFPOLEDB.1 ;Data Source=C:\ТЕМР\mycur.dbf";
OleDbConnection cnOleDb = new OleDbConnection();
cnOleDb.ConnectionString = strOleDb;
using (OleDbCommand command = new OleDbCommand(querystr, cnOleDb))
{
command.Connection.Open();
command.Parameters.Add("@nomer",System.Data.OleDb.OleDbType.Char);
command.Parameters["@nomer"].Value=TextBox1.Text;
OleDbDataReader reader = command.ExecuteReader();
.....
}

... в результате выполнения выдает:System.Data.OleDb.OleDbException: Missing operand .
хотя если вместо @nomer(cм.выделение) ставлю конкретное значение -то все путем!!..
..В чем тут-дело? Где ошибка? Помогите!!! Заранее благодарю!!!
Стр
Дата: 17.11.2004 16:07:15
попробуй вместо @nomer (см. свое выделение) поставить символ вопроса (?)
SELECT * FROM mycur WHERE Subs_code = ?
hDrummer
Дата: 17.11.2004 16:08:54
А может строку запроса конкатенцией формировать и не заморачиваться с параметром?
Worobjoff
Дата: 18.11.2004 08:50:34
OleDbCommand "понимает" только параметры в виде ?
Задавать значения по индексу, в порядке следования знаков вопроса в тексте.
(синтаксис @ИмяПарамета - для SqlCommand)
(синтаксис :ИмяПараметра - для OracleCommand)
lexxkar
Дата: 19.11.2004 07:14:36
..Всем спасибо.! Помогло....