在oracle中使用getDate()更新行时出现错误

Adr*_*ian 5 sql oracle datetime sql-update

我有一个表,其列名为DATE类型的STREAM_TIME.
我正在尝试将该列的所有行更新为今天的日期.使用的数据库是oracle.

我的查询:

update bns_bess_messages SET stream_time=getDate();
Run Code Online (Sandbox Code Playgroud)

Oracle回来时出现此错误:

SQL Error: ORA-00904: "GETDATE": invalid identifier
00904. 00000 -  "%s: invalid identifier"
Run Code Online (Sandbox Code Playgroud)

如何将STREAM_TIME更新到今天的日期?

谢谢

And*_*nov 7

您可以通过以下方式执行此操作:

update bns_bess_messages set stream_time = trunc(sysdate);
Run Code Online (Sandbox Code Playgroud)

或者如果你想得到确切的时间:

update bns_bess_messages set stream_time = sysdate;
Run Code Online (Sandbox Code Playgroud)

要检查您是否可以使用以下查询:

select sysdate from dual;
Run Code Online (Sandbox Code Playgroud)


Pra*_*ana 5

getDate()是oracle使用下面的一个sql server函数的一部分

利用

select current_date
from dual;

update bns_bess_messages SET stream_time=current_date
Run Code Online (Sandbox Code Playgroud)

要么

内置函数SYSDATE返回包含系统上当前日期和时间的DATE值.例如,

select to_char(sysdate, 'Dy DD-Mon-YYYY HH24:MI:SS') as "Current Time"
from dual;

update bns_bess_messages SET stream_time=sysdate
Run Code Online (Sandbox Code Playgroud)


Hol*_*ndt 5

Oracle使用sysdate而不是getDate()

update bns_bess_messages SET stream_time=sysdate;
Run Code Online (Sandbox Code Playgroud)