|
Как можно из входящего параметра с типам VARCHAR получить дату с временем
|
|||
---|---|---|---|
#18+
Добрый вечер! Входящий параметр может быть приходит разными типами. Из за этого сделал тип VARCHAR (p_param IN VARCHAR2). Но если приходит параметр DATE, то дата конвертируется без времени. Как можно получить входящий параметр с временем. CREATE OR REPLACE PROCEDURE TST (p_param IN VARCHAR2) AS BEGIN DBMS_OUTPUT.PUT_LINE (p_param); END; BEGIN TST (SYSDATE); END; результат 08-FEB-19 Нужен результат 08-FEB-19 18:44:00 ... |
|||
:
Нравится:
Не нравится:
|
|||
08.02.2019, 15:45 |
|
Как можно из входящего параметра с типам VARCHAR получить дату с временем
|
|||
---|---|---|---|
#18+
amireyev, alter SESSION set NLS_DATE_FORMAT ... |
|||
:
Нравится:
Не нравится:
|
|||
08.02.2019, 15:58 |
|
Как можно из входящего параметра с типам VARCHAR получить дату с временем
|
|||
---|---|---|---|
#18+
amireyev, перегрузка .... stax ... |
|||
:
Нравится:
Не нравится:
|
|||
08.02.2019, 16:01 |
|
Как можно из входящего параметра с типам VARCHAR получить дату с временем
|
|||
---|---|---|---|
#18+
StaxперегрузкаЭто named unit ... |
|||
:
Нравится:
Не нравится:
|
|||
08.02.2019, 16:06 |
|
Как можно из входящего параметра с типам VARCHAR получить дату с временем
|
|||
---|---|---|---|
#18+
123йй, пробовал execute immediate 'alter session set nls_date_format = ''dd.mm.yyyy hh24:mi:ss'''; не помогло ... |
|||
:
Нравится:
Не нравится:
|
|||
08.02.2019, 16:07 |
|
Как можно из входящего параметра с типам VARCHAR получить дату с временем
|
|||
---|---|---|---|
#18+
amireyevНо если приходит параметр DATE, то дата конвертируется без времени. [/b] преобразовивать явно, Вы ж знаете что пришла дата BEGIN TST (to_char(SYSDATE,'dd-MON-yy hh24:mi:ss','NLS_DATE_LANGUAGE=AMERICAN')); END; .... stax ... |
|||
:
Нравится:
Не нравится:
|
|||
08.02.2019, 16:07 |
|
Как можно из входящего параметра с типам VARCHAR получить дату с временем
|
|||
---|---|---|---|
#18+
ElicStaxперегрузкаЭто named unit я видел, придется прятать в пакет .... stax ... |
|||
:
Нравится:
Не нравится:
|
|||
08.02.2019, 16:09 |
|
Как можно из входящего параметра с типам VARCHAR получить дату с временем
|
|||
---|---|---|---|
#18+
Stax, к сожалению не знаю, внутри процедуры проверяю тип. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.02.2019, 16:09 |
|
Как можно из входящего параметра с типам VARCHAR получить дату с временем
|
|||
---|---|---|---|
#18+
Staxпреобразовивать явно, Вы ж знаете что пришла датаПоздно пить боржоми. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.02.2019, 16:09 |
|
Как можно из входящего параметра с типам VARCHAR получить дату с временем
|
|||
---|---|---|---|
#18+
amireyev execute immediate 'alter session set nls_date_format = ''dd. mm.yyyy hh24:mi:ss'''; автор08- FEB-19 18:44:00 .... stax ... |
|||
:
Нравится:
Не нравится:
|
|||
08.02.2019, 16:10 |
|
Как можно из входящего параметра с типам VARCHAR получить дату с временем
|
|||
---|---|---|---|
#18+
Stax, CREATE OR REPLACE PROCEDURE TST (p_Date IN VARCHAR2) AS BEGIN execute immediate 'alter session set nls_date_format = ''dd.mm.yyyy hh24:mi:ss'''; DBMS_OUTPUT.PUT_LINE (p_Date); END; BEGIN TST (SYSDATE); END; Результат 08-FEB-19 Если запускаю BEGIN execute immediate 'alter session set nls_date_format = ''dd.mm.yyyy hh24:mi:ss'''; TST (SYSDATE); END; то результат правильный 08.02.2019 19:16:10. Вызов процедуры делается в другой системе. Там не смогу зашить execute immediate 'alter session set nls_date_format = ''dd.mm.yyyy hh24:mi:ss'''; Есть еще варианты? ... |
|||
:
Нравится:
Не нравится:
|
|||
08.02.2019, 16:18 |
|
Как можно из входящего параметра с типам VARCHAR получить дату с временем
|
|||
---|---|---|---|
#18+
amireyevЕсть еще варианты?Не изобретать ходуль на колесиках. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.02.2019, 16:21 |
|
Как можно из входящего параметра с типам VARCHAR получить дату с временем
|
|||
---|---|---|---|
#18+
amireyevДобрый вечер! Входящий параметр может быть приходит разными типами. Из за этого сделал тип VARCHAR (p_param IN VARCHAR2). Вызывающие что передают в итоге? ANYDATA ... |
|||
:
Нравится:
Не нравится:
|
|||
08.02.2019, 16:21 |
|
Как можно из входящего параметра с типам VARCHAR получить дату с временем
|
|||
---|---|---|---|
#18+
-2-, ))))))) ... |
|||
:
Нравится:
Не нравится:
|
|||
08.02.2019, 16:22 |
|
Как можно из входящего параметра с типам VARCHAR получить дату с временем
|
|||
---|---|---|---|
#18+
amireyevЕсть еще варианты? создать процедуру в пакете можете? .... stax ... |
|||
:
Нравится:
Не нравится:
|
|||
08.02.2019, 16:25 |
|
Как можно из входящего параметра с типам VARCHAR получить дату с временем
|
|||
---|---|---|---|
#18+
так почему явно нельзя сделать TO_CHAR? ... |
|||
:
Нравится:
Не нравится:
|
|||
08.02.2019, 16:26 |
|
Как можно из входящего параметра с типам VARCHAR получить дату с временем
|
|||
---|---|---|---|
#18+
Можно сделать 2 процедуры для даты и для строки ... |
|||
:
Нравится:
Не нравится:
|
|||
08.02.2019, 16:27 |
|
Как можно из входящего параметра с типам VARCHAR получить дату с временем
|
|||
---|---|---|---|
#18+
StaxElicпропущено... Это named unitя видел, придется прятать в пакетНе обязательно Код: plsql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21.
... |
|||
:
Нравится:
Не нравится:
|
|||
08.02.2019, 16:34 |
|
Как можно из входящего параметра с типам VARCHAR получить дату с временем
|
|||
---|---|---|---|
#18+
-2-SQL> alter session set nls_date_format='"*"'; я так понимаю amireyev не может выдать alter session до вызова TST если б можно было б то 21804523 зы просто интересно если * и алтер можно, то как передать не sysdate? .... stax ... |
|||
:
Нравится:
Не нравится:
|
|||
08.02.2019, 16:40 |
|
Как можно из входящего параметра с типам VARCHAR получить дату с временем
|
|||
---|---|---|---|
#18+
amireyevВходящий параметр может быть приходит разными типами. Из за этого сделал тип VARCHAR (p_param IN VARCHAR2). Используйте параметры подходящих типов. Не полагайтесь на неявное преобразование. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.02.2019, 16:41 |
|
Как можно из входящего параметра с типам VARCHAR получить дату с временем
|
|||
---|---|---|---|
#18+
Stax, Процедура на нашей стороне, вызов делает другая система, и там не всегда приходит дата. Качества данных хромает. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.02.2019, 16:43 |
|
Как можно из входящего параметра с типам VARCHAR получить дату с временем
|
|||
---|---|---|---|
#18+
Staxпросто интересно если * и алтер можно, то как передать не sysdate?Скоропалительные выводы о роли * Код: plsql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11.
... |
|||
:
Нравится:
Не нравится:
|
|||
08.02.2019, 16:44 |
|
Как можно из входящего параметра с типам VARCHAR получить дату с временем
|
|||
---|---|---|---|
#18+
amireyevтам не всегда приходит дата. Вот и используйте те типы, которые приходят. Не надо пытаться изобрести велосипед на varchar2 - он изначально нерабочий ... |
|||
:
Нравится:
Не нравится:
|
|||
08.02.2019, 16:56 |
|
Как можно из входящего параметра с типам VARCHAR получить дату с временем
|
|||
---|---|---|---|
#18+
andrey_anonymous, ок, спасибо! ... |
|||
:
Нравится:
Не нравится:
|
|||
08.02.2019, 16:58 |
|
Как можно из входящего параметра с типам VARCHAR получить дату с временем
|
|||
---|---|---|---|
#18+
-2-, -2-Staxпропущено... я видел, придется прятать в пакетНе обязательно Код: plsql 1. 2. 3. 4. 5.
Заинтриговал ... |
|||
:
Нравится:
Не нравится:
|
|||
08.02.2019, 19:26 |
|
|
start [/forum/topic.php?fid=52&msg=39771211&tid=1882807]: |
0ms |
get settings: |
10ms |
get forum list: |
15ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
42ms |
get topic data: |
10ms |
get forum data: |
3ms |
get page messages: |
59ms |
get tp. blocked users: |
1ms |
others: | 346ms |
total: | 494ms |
0 / 0 |