Perl. Извлечение полной даты из БД Oracle с типом поля DATE
-Есть БД Oracle
-в БД есть таблица в которой одно из полей содержит дату (тип записи DATE)
-для подключения к базе из Perl я использую DBI::Oracle
Соединяюсь всё хорошо, делаю выборки из этой таблицы, в выборки попадает и это поле с датой...
Но когда я пытаюсь занести выбранное значение даты в переменную, то значением переменной становиться не полная дата (число месяц год час мин сек), а короткая (число месяц год)
А для анализа мне "час мин сек" то же нужны как быть?
X)-
Вот код программы:
# соединяемся с базой
$dbh = DBI->connect("dbi:Oracle:host=$host;sid=$sid", $user, $passwd) or die print DBI::errstr;
#Формируем строку селекта (поле strt содержит дату)
$statement=q{select up,STRT,num,DUR,SERVICES,NUM_A,R_ROAMFILE_SEQ from num_calls where up=}.$up_in.q{ and STRT=to_date ('}.$strt_in.q{', 'dd-mm-yyyy hh24:mi:ss') and services='}.$services_in.q{'};
# компилим и выполняем селект
$sth=$dbh->prepare ($statement);
$sth->execute();
while(@string_my=$sth->fetchrow_array())
{
# извлекаем данные из выборки и печатаем их
my $up=$string_my[0];
my $strt=$string_my[1];
my $num=$string_my[2];
my $dur=$string_my[3];
my $service=$string_my[4];
my $num_a=$string_my[5];
my $r_roamfile_seq=$string_my[6];
print "$up $strt $num $dur $service $num_a $r_roamfile_seq\n";
}
$dbh->disconnect or die "DBI::errstr\n";
Врезультате на экране получаем
1660 02.03.06 Traffic 3249 151 250094040002289 -2
Как видно дата вышла в виде 02.03.06, а куда делось время то
Помогите плиз...
http://forums.webscript.ru/showthread.php?postid=23983
Что то вроде нашёл.. но ведь блин не одна ссылка из этого форума не работает
Что то вроде нашёл.. но ведь блин не одна ссылка из этого форума не работает
Запрос я не верно формировал по полю STRT
Нужно было так to_char(STRT,'YYYY-MM-DD HH24:MI:SS') заместо STRT
Т.Е. программа должна так выглядеть
#Формируем строку селекта (поле strt содержит дату)
$statement=q{select up,to_char(STRT,'YYYY-MM-DD HH24:MI:SS')
,num,DUR,SERVICES,NUM_A,R_ROAMFILE_SEQ from num_calls where up=}.$up_in.q{ and STRT=to_date ('}.$strt_in.q{', 'dd-mm-yyyy hh24:mi:ss') and services='}.$services_in.q{'};
Спасибо всем за помощь
:D :D :D :x :D