今天写了一个例子来测试to_date,谁知问题就随之产生了,这个问题让我郁闷了半天最后还是解决了,见代码
SET SERVEROUTPUT ON
DECLARE
    v_date DATE := TO_DATE( '&sv_user_date', 'DD-MON-YYYY');
    v_day varchar2(15);
BEGIN
    v_day := RTRIM(TO_CHAR(v_date, 'DAY'));
    
     if v_day in ( 'SATURDAY', 'SUNDAY') then
        DBMS_OUTPUT.PUT_LINE(v_date|| 'falls on weekend');
     end if;
     ---control resumes here
    DBMS_OUTPUT.PUT_LINE( 'Done...');
END;
运行后提示输入指定格式的日期,于是我就输入
10-JAN-2010
确定后报错,说是无效的月份,我当时还以是输错了呢,结果再输一遍还是这个错,再输还错,找了半天不知道是哪错了,最后想到是不是和系统的语言有关呢,于是输入
10-1月-2010
再确定后,竟然通过了,可能是自己孤陋寡闻了,但是怎么会这样呢?让人想着就郁闷,不过最终还是解决了,也不错,哈哈