日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

关于oracle date类型值0000-0-0的分析

發布時間:2024/9/27 编程问答 31 豆豆
生活随笔 收集整理的這篇文章主要介紹了 关于oracle date类型值0000-0-0的分析 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

目錄

1簡介... 1

2 準備... 1

2.1 環境說明... 1

3 安裝... 2

4 配置... 2

5 使用... 2

5.1 驗證實驗... 2

5.2 問題分析... 3

6 延展... 3

7 總結... 3

? ? ? ? ? ? ? ? ? ? ? ? ? ? 關于oracle date類型值0000-0-0的分析

1簡介

此文是對oracle里date類型且值是0000-0-0的數據導入到HDFS里為7967-07-31 00:00:00.0的分析。

2?準備

2.1?環境說明

oracle版本為11gR2,同理其它版本效果類似。

--查看數據庫版本 SELECT * FROM v$version;

BANNER

Oracle Database 11g Enterprise Edition Release 11.2.0.4.0 - 64bit Production

PL/SQL Release 11.2.0.4.0 - Production

"CORE? 11.2.0.4.0??? Production"

TNS for Linux: Version 11.2.0.4.0 - Production

NLSRTL Version 11.2.0.4.0 - Production

--查看字符集 SELECT * FROM v$nls_parameters where parameter='NLS_CHARACTERSET';

PARAMETER

VALUE

NLS_CHARACTERSET

ZHS16GBK

3 安裝

無.

4?配置

5?使用

5.1?驗證實驗

1) oracle里創建一個shenl表并插入時間格式的數據為0000-0-0

CREATE TABLE shenl(a varchar2(3),b int,c date,d date); INSERT INTO shenl VALUES('e',22, to_date('0001-01-01','YYYY-MM-DD')-360,to_date('1111-11-11','YYYY-MM-DD')); INSERT INTO shenl VALUES('h',44, to_date('2014-12-06','YYYY-MM-DD'),to_date('2014-12-06','YYYY-MM-DD')); -- 查看數據 SELECT * FROM shenl;

A

B

C

D

e

22

0000/0/0

1111/11/11

h

44

2014/12/6

2014/12/6

???????

SELECT dump(c,10),length(c),c,to_char(c,'yyyy-mm-dd hh24:mi:ss.SSSS'),A.* FROM shenl A WHERE C IS NOT NULL AND A IN ('e','h') ORDER BY A;

2) 以第一條 dump(c,10)為例 它的公式應該是 (-21+100)*100 + (-33+100)=7967

第三位 第四位是月和日。分別是 7 31 所以在SQOOP轉移數據到HDFS里顯示的結果見下:

3) ?以第二條 dump(c,10)為例 它的公式應該是 (120-100)*100 + (-100+114)=2014

同樣第三位 第四位是月和日。分別是 12 6 所以顯示的 是2014-12-06

5.2?問題分析

6?延展

7?總結

暫無.有問題可以咨詢如下:

總結

以上是生活随笔為你收集整理的关于oracle date类型值0000-0-0的分析的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。