我当前正在使用Oracle,但是大多数SQL与db无关。CURRENT_TIMESTAMP是一个例外,它在MSSQL中失败。是否有可能为此使用更便携的语法?
根据他们的文档,下列供应商支持CURRENT_TIMESTAMP。
CURRENT_TIMESTAMP
总而言之,下面CURRENT_TIMESTAMP是SQL标准中规定的方法,下面是其摘要,如果您正在寻找与数据库无关的SQL,则您真正能做的最好的事情就是坚持该标准,尽管这不能保证任何内容都可以完全不可知论的数据库:
功能
指定产生日期时间类型值的函数。
格式
<current date value function> ::= CURRENT_DATE` <current time value function> ::= CURRENT_TIME [ <left paren> <time precision> <right paren> ] <current local time value function> ::= LOCALTIME [ <left paren> <time precision> <right paren> ] <current timestamp value function> ::= CURRENT_TIMESTAMP [ <left paren> <timestamp precision> <right paren> ] <current local timestamp value function> ::= LOCALTIMESTAMP [ <left paren> <timestamp precision> <right paren> ]
一般规则
1)的CURRENT_DATE,CURRENT_TIME和CURRENT_TIMESTAMP分别返回当前日期,当前时间和当前时间戳;返回的时间和时间戳记值的时区位移等于SQLsession的当前默认时区位移。