能把varchar2类型(是日期字符串)的数据直接赋值给date字段吗? 求语句

oracle中
2025-02-23 17:42:22
推荐回答(3个)
回答1:

不能,需要转换!Oracle中使用“to_date”,语法如下:
to_date(string,[format,[nlsparams]])函数将char 或varchar2类型的值转化为一个Date值。
format,nlsparams是可选项;
format:要转化的格式;
nlsparams:返回日期所使用的语言,格式为:'NLS_DATE_LANGUAGE=LANGUAGE';
如果没有指定format和nlsparams,则按oracle的默认模式处理。
1)select to_date('2011-01-18','yyyy-mm-dd','NLS_DATE_LANGUAGE = english') from dual;
2)select to_date('20110118112235','yyyy-mm-dd hh24:mi:ss') form dual;

回答2:

Oracle的话用to_date转换一下

回答3:

sql server 2000中是可以的。
例如:
declare @date datetime
set @date='2011-01-18'
select @date

C#中需要转换。例如:
string strDate='2011-01-18';
DateTime newDate=Convert.ToDateTime(strDate);

java中也是需要转换的,代码就不写了