| Maxidrom |
| Отправлено: 18.01.2007, 20:16 |
|
Ученик-кочегар
Группа: Участник
Сообщений: 5

|
Подскажите пожалуйста как правильно записывать или преобразовывать дату. Пробовал записывать и через "/" и добавлял '0:0:0'. Выдает ошибку. Заранее огромное спасибо
QRExpense->Close();
QRExpense->SQL->Clear();
QRExpense->SQL->Add("Select * from Expense Where Date Between '01.01.2006' And '01.01.2007' ");
QRExpense->Open();
Забыл уточнить данные храню в Paradox (BDE)
Отредактировано Maxidrom — 18.01.2007, 22:10 |
 |
| Tantos |
| Отправлено: 19.01.2007, 02:08 |
|

Станционный диспетчер
Группа: Участник
Сообщений: 108

|
Пользуйся параметризованными запросами:
| CODE |
QRExpense->Close();
QRExpense->SQL->Clear();
QRExpense->SQL->Add("Select * from Expense Where Date Between :D1 And :D2 ");
QRExpense->ParamByName("D1")->AsString = "01.01.2006";
QRExpense->ParamByName("D2")->AsString = "01.01.2007";
QRExpense->Open();
|
|
 |
| AVC |
| Отправлено: 19.01.2007, 09:32 |
|
Ветеран
Группа: Модератор
Сообщений: 1583

|
| QUOTE (Maxidrom @ 18.01.2007, 19:16) | | Забыл уточнить данные храню в Paradox (BDE) |
Странно. У меня подобный запрос идет на ура
Select LastInvoiceDate From customer.db
Where LastInvoiceDate between '18.10.1994' and '19.10.1994'
Может ему имя поля Date не нравится? |
 |
| Tantos |
| Отправлено: 19.01.2007, 11:48 |
|

Станционный диспетчер
Группа: Участник
Сообщений: 108

|
| QUOTE |
Может ему имя поля Date не нравится?
|
2 AVC: ИМХО, это так. Если я правильно помню последний диспут на эту тему на XPortal'e, то ему надо заключить имя поля в []. В Firebird'e имена полей, соответствующие зарезервированным словам, необходимо заключать в двойные кавычки.
Отредактировано Tantos — 19.01.2007, 18:50
|
 |
| nawok78 |
| Отправлено: 29.01.2007, 08:42 |
|
Станционный диспетчер
Группа: Участник
Сообщений: 115

|
| QUOTE | Может ему имя поля Date не нравится?
|
стопудово!
| CODE |
Select * from Expense Where Expense.'Date' Between :D1 And :D2
| |
 |