【发布时间】:2021-11-29 12:49:54
【问题描述】:
我需要插入日期列记录以及小时、分钟、秒,例如我的加入日期是 10/10/2021 但我需要插入 10/10/2021 08:05:25 我需要这样的输出插入
我的插入查询:
INSERT INTO lease_rent_receipts
(billing_start_date, billing_end_date,
charge_category, due_amount,
due_date, client_id,total_payable, description)
VALUES (l_billing_start_date,l_billing_end_date,l_charge_category, l_due_amount,
l_due_date, l_client_id,l_total_payable, l_description);
我需要与 hrs:min:sec 一起插入的 due_date 列的主要内容
请帮忙
【问题讨论】:
-
您可以使用
to_date()使用合适的格式掩码将字符串变量转换为日期(包括时间 - 日期总是有时间,即使是午夜);或者,如果您有固定值,则可以转换时间戳文字。但是你的l_*变量是什么数据类型,在你得到这个语句之前它们是如何提供或分配的? -
我们不知道 billing_start_date、billing_end_date、l_billing_start_date 或 l_billing_end_date 的数据类型。如果系统设计得当,它们应该是DATE类型,它固有地包含日期和时间,一直到秒。我们也看不到你看到的让你认为他们没有时间的东西。很可能您的列 do 有时间,但您的输出未格式化以显示它。请记住,DATE(和 TIMESTAMP)是内部格式的二进制结构。
-
.(.. cont) 您在屏幕上看到的是内部二进制 DATE 的字符串表示形式,可以按照您指定的任何方式进行格式化。请更新您的问题以显示元素的定义、如何填充 l_billing 日期以及您所看到的让您认为您没有时间的内容。如果您重新格式化您的代码以使其真正可读而不是一堆乱七八糟的运行代码,这也会有所帮助。
标签: sql oracle sql-insert datetime-conversion