![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Project ... raised exception class EOleException with message... [D5, MSSQL]
Galiya © (2003-10-27 11:28:00)
Здравствуйте, уважаемые мастера. Помогите, если можно. У меня на этапе выполнения возникает ошибка "Project ... raised exception class EOleException with message "Invalid column name "14.10.2003"". Появл. эта ошибка на команде ExecSQL. Запрос выглядит так:
with DM.ADOQry_plat_calend do
begin
SQL.Clear;
SQL.Add("select * from Plat_calend a");
SQL.Add(" where (a.Dpo = ""+ DateToStr DateTimePicker1.Date)+"") and (a.Dpo = ""+ DateToStr(DateTimePicker2.Date)+"") order by dpo,item_name");
ExecSQL;
Open;
end;
Спасибо.
Galiya (2003-10-27 13:07:00) [1]
Спасибо большое, paul_k, Анатолий, Vlad, panov, Ozone, мне помог Аналайзер.
Vlad (2003-10-27 12:00:00) [2]
>Ozone © (27.10.03 11:54) [6]
Open как раз нужен.
ExecSQL не нужен.
paul_k (2003-10-27 11:59:00) [3]
2 Ozone
Скорее зачем Exec, но об этом не спрашивали
paul_k (2003-10-27 11:57:00) [4]
> "Invalid column name "14.10.2003""
так это кавычки не передались. запрос выглядит как
a.Dpo=14.10.2003
...(a.Dpo = """+ DateToStr(DateTimePicker1.Date)+""") and ...- попробуй так
или функция славная есть
function QuotedStr(const S: string): string;
Description
Use QuotedStr to convert the string S to a quoted string. A single quote character (") is inserted at the beginning and end of S, and each single quote character in the string is repeated.
Note: When working with multi-byte character systems (MBCS), use AnsiQuotedStr instead.
Ozone (2003-10-27 11:54:00) [5]
А зачем < Open > ???
paul_k (2003-10-27 11:51:00) [6]
после вормирования запроса
sql.savetofile("sql.log")
и в Аналайзер этот текст. Сразу все на места встанет
SGI (2003-10-27 11:39:00) [7]
Ой, это, конечно, мой ляп, проверяется диапазон:
with DM.ADOQry_plat_calend do
begin
SQL.Clear;
SQL.Add("select * from Plat_calend a");
SQL.Add(" where (a.Dpo >= ""+ DateToStr(DateTimePicker1.Date)+"") and (a.Dpo <= ""+ DateToStr(DateTimePicker2.Date)+"") order by dpo,item_name");
ExecSQL;
Open;
end
Anatoly Podgoretsky (2003-10-27 11:33:00) [8]
Интересно, а зачем здест ДВА DateTimePicker, которые обязательно должны быть равны?
SGI (2003-10-27 11:32:00) [9]
Прошу прощения за опечатку. На самом деле так:
with DM.ADOQry_plat_calend do
begin
SQL.Clear;
SQL.Add("select * from Plat_calend a");
SQL.Add(" where (a.Dpo = ""+ DateToStr(DateTimePicker1.Date)+"") and (a.Dpo = ""+ DateToStr(DateTimePicker2.Date)+"") order by dpo,item_name");
ExecSQL;
Open;
end;
panov (2003-10-27 11:29:00) [10]
Проверь скобки для начала...