Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Значение типа дата в строковое поле [IB5.x]


Ренат ©   (2003-09-30 08:27:00) 

В триггере пишу такой код

insert into tbl_name(field1)
values (old.START);

field1 - varchar(64)
start - date

в tbl_name пишет значения вида: 29-SEP-2003 16:12:23.0000
Как сделать чтобы эти значения быти типа: 29.09.03 16:12:23 ?


stud   (2003-09-30 10:30:00) [1]

cast (datetimefield as char(8))
но если ты хочеш вести историю, то лучше этого не делать.
проще например создай примерно такую таблицу:
obj varchar( ,
data date,
time time,
key integer,
oldval type,
newval type
вот, и на нужные таблицы пишеш триггеры и вставляеш соответствующую информацию например:table_after_delete
insert into logtable (obj,data,time,key,oldval,newval) values
("table_name",date,currenttime,pk,old.pole,new.pole)


Ренат   (2003-09-30 09:52:00) [2]


> а почему не записывать в поле соответствующего типа

таблица истории не для 1 таблицы => PK у всех разные


Ренат   (2003-09-30 09:46:00) [3]


> stud © (30.09.03 09:42) [6]


cast как предлагаешь применить?


ЮЮ   (2003-09-30 09:45:00) [4]

>может я чего-то не так делаю?
Да ради бога! Потом напишешь ХП, чтобы смогда отбирать записи для заданного диапазона, т.к. обычный запрос уже не прокатит

>записывать в строковое полетаблицы историй для последующих операций
а почему не записывать в поле соответствующего типа? (с IB на практике не знаком)


stud   (2003-09-30 09:42:00) [5]

можно использовать функцию cast для приведения типов. а проще возьми IBExpert он позволяет вести историю. тебе только нужно выбрать объекты


Ренат   (2003-09-30 09:38:00) [6]

может я чего-то не так делаю?
я хочу хранить историю удалений записей
в триггере before delete хочу значение PK (он содержит и поле типа date) записывать в строковое поле таблицы историй для последующих операций


stud   (2003-09-30 09:30:00) [7]

зачем называть таблицы такими именами может лучше 290903161223 ?


ЮЮ   (2003-09-30 09:30:00) [8]

По другому - хранить в формате, предназначенном для хранения ДатыВремени. И искать можно будет необходимую информацию и индексы использовать. А выводить нужно в нужном формате.
Но это уж совсем по-другому:-)


Ренат   (2003-09-30 09:19:00) [9]

ясно
по-другому никак?


Alexandr   (2003-09-30 09:12:00) [10]

udf
или IB6 и выше...


Наверх

Титульная страница Поиск, карта сайта Написать письмо