![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
вывод операций за месяц [D7, MSSQL]
Jeeb © (2007-03-20 14:47:00)Здравствуйте... Давно мучаюсь... Поможете?
Вопрос вот в чем: Есть таблица с полем (char) RC.Дата
Необходимо вывести все операции за определенный месяц...
Символ апострофа записан в А, а месяц записан в S. Год в Eyear (TEdit)
Пишу такой запрос:
'SELECT *'
'FROM RC'
'WHERE RC.Дата Like '+A+'*.'+S+'.'+EYear.Text+A
Не проходит... Помогите... Как еще можно все это осуществить?
Desdechado (2007-03-25 15:39:00) [1]> FilterString:='RC.Дата='+EDate.Text;
Эту гадость замени на использование параметра.
Jeeb (2007-03-24 23:24:00) [2]В общем делаю так:
FDM.QRD - запрос ADOQuery
EDate.Text - Tedit, откуда берем дату в формате DD.MM.YYYY
FilterString:='RC.Дата='+EDate.Text;
FDM.QRD.Close;
with FDM.QRD do
begin
with SQL do
begin
Clear;
Add('SELECT RC.Дата, RC.Идентификатор, RC.БУ, RC.Приход, RC.Расход, RC.Цена, RC.Стоимость');
Add('FROM RC');
Add('WHERE '+FilterString);
Add('ORDER BY RC.Дата, RC.Идентификатор');
end;
Open;
end;
Не разберусь, что не так....
Anatoly Podgoretsky (2007-03-24 17:45:00) [3]> Jeeb (24.03.2007 16:13:10) [10]
В запросе не наблюдается DD.MM.YYYY
Jeeb (2007-03-24 16:13:00) [4]дату переделал в формат datetime.
Теперь не хочет воспринимать DD.MM.YYYY. Ботвень какая-то: типа incorrect syntax near '.2007'....
Кто-нибудь сталкиватся?
Jan (2007-03-21 09:04:00) [5]
> ну так вместо data имя нужного поля, по прваилам скл сервера!
> !!
причем тут это? у него дата как строка хранится причем в формате не понятном скл!
stud (2007-03-20 19:36:00) [6]ну так вместо data имя нужного поля, по прваилам скл сервера!!!
Jan (2007-03-20 18:51:00) [7]что-то типа такого:
Server: Msg 242, Level 16, State 3, Line 1
The conversion of a char data type to a datetime data type resulted in an out-of-range datetime value.
Jan (2007-03-20 18:48:00) [8]
> datepart(year,rc.data)
тут бяка
stud (2007-03-20 17:52:00) [9]если eyaer.text содержит число и s число никаких бяк не будет
Jan (2007-03-20 17:34:00) [10]
> where datepart(year,rc.data)='+eyaer.text+
> ' and datepart(month,rc.data)='+s
учти что на сервере не русские настройки и получишь бяку...
stud (2007-03-20 17:05:00) [11]Jeeb (20.03.07 14:47)
Символ апострофа записан в А,
а это зачем?
не проще ли будет
where datepart(year,rc.data)='+eyaer.text+
' and datepart(month,rc.data)='+s
Sergey13 (2007-03-20 14:56:00) [12]> Есть таблица с полем (char) RC.Дата
Ну да. Сначала создаем трудности потом мужественно их преодолеваем.
Jan (2007-03-20 14:50:00) [13]вместо * используй %
ЗЫ дата в char - гемор на всю жизнь.