oracle 添加时间戳,sql - 如何在Oracle中插入时间戳?

sql - 如何在Oracle中插入时间戳?

我有一个带有timestamp字段的Oracle DB。 将timestamp插入此字段的正确SQL代码是什么?

Mike Rifgin asked 2019-06-16T10:46:04Z

9个解决方案

107 votes

insert

into tablename (timestamp_value)

values (TO_TIMESTAMP(:ts_val, 'YYYY-MM-DD HH24:MI:SS'));

如果要插入当前时间戳,则:

insert

into tablename (timestamp_value)

values (CURRENT_TIMESTAMP);

reggie answered 2019-06-16T10:46:21Z

22 votes

INSERT

INTO mytable (timestamp_field)

VALUES (CURRENT_TIMESTAMP)

CURRENT_TIMESTAMP和SYSTIMESTAMP是用于此目的的Oracle保留字。 它们是SYSDATE的时间戳类比。

Quassnoi answered 2019-06-16T10:46:48Z

14 votes

INSERT INTO TABLE_NAME (TIMESTAMP_VALUE) VALUES (TO_TIMESTAMP('2014-07-02 06:14:00.742000000', 'YYYY-MM-DD HH24:MI:SS.FF'));

Kash answered 2019-06-16T10:47:11Z

8 votes

取决于您要插入的值的来源。 如果要插入当前时间,可以使用CURRENT_TIMESTAMP,如其他答案(或SYSTIMESTAMP)所示。

如果您将时间作为字符串并希望将其转换为时间戳,请使用类似的表达式

to_timestamp(:timestamp_as_string,'MM/DD/YYYY HH24:MI:SS.FF3')

我希望时间格式组件是不言自明的,除了FF3表示亚秒精度的3位数。 你可以高达6位数的精度。

如果从应用程序插入,最佳答案可能取决于日期/时间值如何以您的语言存储。 例如,您可以将某些Java对象直接映射到TIMESTAMP列,但您需要了解JDBC类型映射。

Dave Costa answered 2019-06-16T10:48:03Z

2 votes

我更喜欢ANSI时间戳文字:

insert into the_table

(the_timestamp_column)

values

(timestamp '2017-10-12 21:22:23');

手册中的更多细节:[https://docs.oracle.com/database/121/SQLRF/sql_elements003.htm#SQLRF51062]

a_horse_with_no_name answered 2019-06-16T10:48:36Z

1 votes

在sql中插入日期

insert

into tablename (timestamp_value)

values ('dd-mm-yyyy hh-mm-ss AM');

如果我们想插入系统日期

insert

into tablename (timestamp_value)

values (sysdate);

Sai Krishna answered 2019-06-16T10:49:10Z

0 votes

首先你需要让字段为Nullable,之后就这么简单 - 而不是把值放到这个代码CURRENT_TIMESTAMP。

Ahuramazda answered 2019-06-16T10:49:38Z

0 votes

对于我自己将来的参考:

使用cx_Oracle使用cursor.setinputsize(...):

mycursor = connection.cursor();

mycursor.setinputsize( mytimestamp=cx_Oracle.TIMESTAMP );

params = { 'mytimestamp': timestampVar };

cusrsor.execute("INSERT INTO mytable (timestamp_field9 VALUES(:mytimestamp)", params);

不需要在db中进行转换。 请参阅Oracle文档

SeSpoon answered 2019-06-16T10:50:18Z

-5 votes

CREATE TABLE Table1 (

id int identity(1, 1) NOT NULL,

Somecolmn varchar (5),

LastChanged [timestamp] NOT NULL)

这适用于mssql 2012

INSERT INTO Table1 VALUES('hello',DEFAULT)

VGuest answered 2019-06-16T10:50:44Z

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
要在Oracle获取当前时间戳,可以使用以下SQL语句: SELECT CURRENT_TIMESTAMP FROM dual; 这将返回当前的日期和时间戳。在Oracle,dual是一个特殊的表,用于执行一些不涉及实际表的查询操作。 引用的to_date函数和引用的TO_TIMESTAMP函数是用于将字符串转换为日期或时间戳格式的函数,而引用的to_char和to_number函数则是用于将日期、时间戳或数字转换为字符串或数字格式的函数。这些函数可以在需要将日期、时间戳或数字进行格式转换时使用,但在获取当前时间戳时不需要使用它们。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* [OracleSQL语句如何获取系统当前时间并进行操作](https://blog.csdn.net/weixin_42299396/article/details/116313059)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT3_1"}}] [.reference_item style="max-width: 33.333333333333336%"] - *2* [sql - 如何在Oracle插入时间戳?](https://blog.csdn.net/weixin_30154537/article/details/116323433)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT3_1"}}] [.reference_item style="max-width: 33.333333333333336%"] - *3* [orcle数据库获取时间](https://blog.csdn.net/for__future_/article/details/127319637)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT3_1"}}] [.reference_item style="max-width: 33.333333333333336%"] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值