![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
ДатаВремя в запросе Insert на InterBase [D5, D6, IB6.x]
Борис © (2002-12-25 08:48:00)Всем привет!
Делаю так:
IBSQL1.SQL.Add("Insert into T_NAK(PKEY, DATETIME, FIO, TYPE_NAK)");
IBSQL1.SQL.Add("values");
IBSQL1.SQL.Add("(Gen_ID(G_NAKL_MASTER,1), #"+DateTimeToStr(now)+"#, """+edit1.text+""", ""1"")");
Ругается на #.
Вопрос: Как правильно в данном случае вставить дату. Поле DATETIME - DATE.
Lady D (2002-12-25 11:09:00) [1]
> kaif © (25.12.02 10:54)
> Формат даты (DATE) в IB6.0
> YYYY-MM-DD
DATE в IB6.0 - это 32-bit longword. О каком формате речь?
Борис (2002-12-25 10:57:00) [2]Всем спасибо!
Все работает!
kaif (2002-12-25 10:54:00) [3]Формат даты (DATE) в IB6.0
YYYY-MM-DD
Alexandr (2002-12-25 10:29:00) [4]у тебя 3диалект?
Там тип Date это только дата.
Если нужна дата+время - это timeStamp.
Удачи.
Борис (2002-12-25 10:17:00) [5]Дата добавляется! Сделал так:
IBSQL1.SQL.Add("(Gen_ID(G_NAKL_MASTER,1), ""now"", "+#39+edit1.text+#39+", ""1"")");
Однако добавляется только дата, а надо еще и время!
Lady D (2002-12-25 10:04:00) [6]Отбой, я промахнулась, просто я обычно эту скобку после VALUES ( ставлю :-)
> Здесь проблема со скобками:
> Add(" (Gen_ID( G_NAKL_MASTER,1), "+#39+
> может так ?: Add("Gen_ID( G_NAKL_MASTER,1), "+#39+
Lady D (2002-12-25 10:03:00) [7]Здесь проблема со скобками:
Add(" (Gen_ID( G_NAKL_MASTER,1), "+#39+
может так ?: Add("Gen_ID( G_NAKL_MASTER,1), "+#39+
Johnmen (2002-12-25 10:02:00) [8]Для IB и клонов текущая дата - today,
текущая дата+время - now.
...values(...,"today",...)
Alexandr (2002-12-25 10:02:00) [9]кароче Ib понимает три формата даты
из них самый классный 21-FEB-2002 тут ошибиться НЕВОЗМОЖНО.
остальные 2 см. в доке.
#39 писать необязательно, достаточно апострофы продублировать
prosoft (2002-12-25 09:58:00) [10]Борис.
current_date - конструкция языка SQL. По крайней мере в FireBird работает.
Lady D (2002-12-25 09:58:00) [11]
IBSQL1.Close;
IBSQL1.SQL.Clear;
IBSQL1.SQL.Add("Insert into T_NAK(PKEY, DATETIME, FIO, TYPE_NAK) ");
IBSQL1.SQL.Add(" values ");
IBSQL1.SQL.Add(" (Gen_ID( G_NAKL_MASTER,1), "+#39+"NOW"+#39+", "+#39+edit1.text+#39+", "1"+")");
Для конкретного случая с NOW, время будет то, что на сервере с IB
Борис (2002-12-25 09:51:00) [12]Lady D!
фиг, не работает так!
prosoft
И чем Ваше решение оличается от моего?
Борис (2002-12-25 09:47:00) [13]Johnmen
А где можно прочитать, какой шаблон нужен типу данных Date? В хелме я ненашел. yandex.ru тоже дал только инфу, что дата для IB должна быть dd.mm.yyyy, а вот время неизвестно!
prosoft (2002-12-25 09:47:00) [14]
insert into test_table (field_date) values (current_date)
Наталия (2002-12-25 09:47:00) [15]Ну хорошо:
params.byname
А следующий вопрос, как и предполагалось - о несоответствии формата даты :)
Lady D (2002-12-25 09:46:00) [16]Не нужно решать за IB как хранить дату:
"+#39+DateToStr(now)+#39+"
Johnmen (2002-12-25 09:45:00) [17]>Борис ©
Тебя же предупреждали о корректномзадании шаблона !
Чтобы IB сервер понял...
Борис (2002-12-25 09:41:00) [18]Alexandr © (25.12.02 09:25)
С радостью читаю. Только вот никак не могу найти форат даты в IB.
to All
Делаю так:
IBSQL1.SQL.Add("(Gen_ID(G_NAKL_MASTER,1), "+#39+FormatDateTime("dd.mm.yyyy hh:mm",now)+#39+", "+#39+edit1.text+#39+", ""1"")");
Вылетает ошибка:
conversion errorfrom string ""25.12.2002 09:38""
Alexandr (2002-12-25 09:25:00) [19]а хелп почитать можно?
Lady D (2002-12-25 09:25:00) [20]Быть может Вы хотели сказать #39 ?