У меня есть скрипт, который получает текущее время и должен передать его другому скрипту.
variable v_s_time varchar2(30);
exec :v_s_time := to_char(sysdate,'YYYY-MM-DD HH:MI:SS AM');
--Lots of unrelated code here
variable v_e_time varchar2(30);
exec :v_e_time := to_char(sysdate,'YYYY-MM-DD HH:MI:SS AM');
@"test report script.sql" :v_s_time :v_e_time; --yes, I also tried ":v_s_time", didn't seem to do anything.
Это не работает, похоже, что в сценарий передается литерал :v_s_time
вместо того, что я хочу: "2010-04-14 05:50:01 PM"
.
Чтобы выполнить это вручную, я мог бы ввести:
@"test report script.sql" "2010-04-14 05:50:01 PM" "2010-04-14 05:57:34 PM"
Я обнаружил, что работает так:
define v_s_time = "2010-04-14 05:50:01 PM"
--Lots of unrelated code here
define v_e_time = "2010-04-14 05:57:34 PM"
@"test report script.sql" "&&v_s_time" "&&v_e_time";
Но нереально жестко кодировать дату и время. Кто-нибудь знает, как справиться с этим?
(Oracle 10g)