tag:blogger.com,1999:blog-7098481.post115338310629086610..comments2023-10-09T13:41:19.588+02:00Comments on friky.com: Bugs persistentsAgustí Ponshttp://www.blogger.com/profile/11432871832475029159noreply@blogger.comBlogger2125tag:blogger.com,1999:blog-7098481.post-1155629435006434672006-08-15T10:10:00.000+02:002006-08-15T10:10:00.000+02:00No, si això ja ho tenia clar, de fet es com ho vem...No, si això ja ho tenia clar, de fet es com ho vem arreglar, però com t'expliques que funcioni pel 2001 i el 2002 i en canvi no funcioni pel 2000 ?<BR/><BR/>La prova es la seguent:<BR/><BR/>select to_date(to_char(sysdate-1392), 'dd/mm/yyyy hh24:mi') from dual;<BR/><BR/>que retorna correctament una data del 2002 i<BR/><BR/>select to_date(to_char(sysdate-2392), 'dd/mm/yyyy hh24:mi') from dual;<BR/><BR/>Que fot un casque perquè es una data del 2000 ?<BR/><BR/>Com t'ho expliques ?<BR/><BR/>AgustiAgustí Ponshttps://www.blogger.com/profile/11432871832475029159noreply@blogger.comtag:blogger.com,1999:blog-7098481.post-1155567860591169392006-08-14T17:04:00.000+02:002006-08-14T17:04:00.000+02:00Hola Agustí, no és un bug, només que no es va util...Hola Agustí, <BR/><BR/>no és un bug, només que no es va utilitzar la màscara que tocava i es us vàreu fiar de la variable NLS_DATE_FORMAT (que per defecte és DD-MM-YY). <BR/><BR/>Prova amb aquesta màscara:<BR/><BR/>or nvl(fi,sysdate-2392.123) <> to_date(nvl(v_fi, to_char(sysdate-2392.123, 'dd/mm/rrrr hh24:mi')),'DD/MM/rrrr HH24:MI')<BR/><BR/>O canviat el valor de la variable NLS_DATE_FORMAT:<BR/><BR/>SQL> alter session set nls_date_format = 'dd-mm-yyyy';<BR/><BR/>Session altered.<BR/><BR/>SQL> select to_date(to_char(sysdate-2400) , 'dd-mm-yyyy hh24:mi:ss') from dual;<BR/><BR/>TO_DATE(TO<BR/>----------<BR/>18-01-2000<BR/><BR/>SQL> alter session set nls_date_format = 'dd-mm-rrrr';<BR/><BR/>Session altered.<BR/><BR/>SQL> select to_date(to_char(sysdate-2400) , 'dd-mm-yyyy hh24:mi:ss') from dual;<BR/><BR/>TO_DATE(TO<BR/>----------<BR/>18-01-2000<BR/><BR/>o simplement posant la màscara correcte:<BR/><BR/>SQL> select to_date(to_char(sysdate-2400) , 'dd-mm-rrrr hh24:mi:ss') from dual;<BR/><BR/>TO_DATE(T<BR/>---------<BR/>18-JAN-00<BR/><BR/>SQL> select to_date(to_char(sysdate-2400) , 'dd-mm-rr hh24:mi:ss') from dual;<BR/><BR/>TO_DATE(T<BR/>---------<BR/>18-JAN-00<BR/><BR/>SQL> select to_date(to_char(sysdate-2400) , 'dd-mm-yyyy hh24:mi:ss') from dual;<BR/>select to_date(to_char(sysdate-2400) , 'dd-mm-yyyy hh24:mi:ss') from dual<BR/> *<BR/>ERROR at line 1:<BR/>ORA-01858: a non-numeric character was found where a numeric was expected<BR/><BR/>En resum, de bug res, un error de programació :-).<BR/><BR/>Salutacions<BR/>David PujolDavid Pujolhttps://www.blogger.com/profile/02999703675755648686noreply@blogger.com