oracle中日期数据类型占用了多少字节?
v_date:=to_date('15-08-2014','dd-mm-yyyy');
v_day:=to_char(v_day,'day');
现在空格在v_day结束时填充,因此以下条件不起作用
if v_day='saturday' then
dbms_ouput.put_line('half_day');
要使上述条件起作用,我需要使用rtim
v_day:=rtrim(to_char(v_day,'day'));
现在问题是要知道oracle中date数据类型占用了多少字节?
答案 0 :(得分:1)
这与数据类型占用的字节数无关。默认情况下,会话语言为the day
format model is padded to the length of the longest day name(基于NLS设置)。
字符元素MONTH,MON,DAY和DY分别用尾随空白填充到最长的完整月份名称,最长的缩写月份名称,最长的完整日期名称或最长的缩写日期名称的宽度,在由NLS_DATE_LANGUAGE和NLS_CALENDAR参数的值确定的有效名称中。
您可以通过添加FM
格式修饰符来更改它:
v_date:=to_date('15-08-2014','dd-mm-yyyy');
v_day:=to_char(v_day,'FMday');
if v_day='saturday' then
dbms_ouput.put_line('half_day');
...
日期名称本身依赖于NLS,长而缩写,因此如果会话可能使用其他语言,则应确保to_char
使用英语作为日期语言。