亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

oracle與gbase8s遷移數(shù)據(jù)類型對照以及舉例說明

 更新時間:2023年12月29日 09:33:30   作者:_蘇沐  
gbase8s是一個高性能的分布式關(guān)系型數(shù)據(jù)庫,下面這篇文章主要給大家介紹了關(guān)于oracle與gbase8s遷移數(shù)據(jù)類型對照以及舉例說明的相關(guān)資料,文中通過圖文介紹的非常詳細(xì),需要的朋友可以參考下

聲明:以下為筆者閱讀gbase官方文檔和oracle官方文檔的理解,如有錯誤,敬請指正。

最終結(jié)論:oracle與gbase8s數(shù)據(jù)類型對應(yīng)關(guān)系

邊界范圍使用數(shù)據(jù)類型oraclegbase
最大精度126位FLOAT/NUMBERDECIMAL
單精度浮點數(shù)數(shù)據(jù)類型BINARY_FLOATsmallfloat
雙精度浮點數(shù)數(shù)據(jù)類型BINARY_DOUBLEFLOAT

下面首先回憶一下精度、定點、浮點的定義,然后再來看oracle、gbase的官方文檔。

關(guān)于單精度與雙精度的區(qū)別

單精度和雙精度是計算機中用于表示浮點數(shù)的兩種不同精度的格式。

  • 單精度(Single Precision):單精度浮點數(shù)使用32位(4個字節(jié))來存儲一個浮點數(shù)。它包括一個符號位(用于表示正負(fù))、8位指數(shù)和23位尾數(shù)。單精度提供大約7位有效數(shù)字的精度。
  • 雙精度(Double Precision):雙精度浮點數(shù)使用64位(8個字節(jié))來存儲一個浮點數(shù)。它包括一個符號位、11位指數(shù)和52位尾數(shù)。雙精度提供大約15-16位有效數(shù)字的精度,比單精度更高。

主要區(qū)別:

  • 精度: 雙精度提供比單精度更高的精度,因為它使用更多的位來表示數(shù)字。這使得雙精度能夠處理更大范圍的數(shù)值,并提供更高的精確度。
  • 存儲需求: 雙精度使用的存儲空間是單精度的兩倍,因此在存儲大量數(shù)據(jù)時,雙精度需要更多的內(nèi)存空間。
  • 計算速度: 在某些情況下,單精度計算可能比雙精度計算速度更快,因為它涉及更少的位數(shù)和更簡單的計算。

選擇使用單精度還是雙精度通常取決于對精度和內(nèi)存使用的要求。如果需要更高的精度或者處理非常大或非常小的數(shù)值范圍,雙精度可能更適合。而如果對精度要求不高,但需要節(jié)省內(nèi)存,那么單精度可能更合適。

關(guān)于定點與浮點定義的區(qū)別

定點數(shù)和浮點數(shù)是計算機表示數(shù)據(jù)的兩種不同方式。定點數(shù)的小數(shù)點位置在計算機的存儲中是約定好的,這意味著小數(shù)位為固定十進制數(shù),而浮點數(shù)的小數(shù)位則隨2的幾次冪的大小而浮動。例如,8位定點數(shù)可以表示的范圍是-16.00~15.875,其最大精度為0.125。

將浮點數(shù)轉(zhuǎn)換為定點數(shù)的操作包括:首先計算 b = a * 2^F(a為浮點數(shù),F(xiàn)為小數(shù)部分字長),然后將b化為整數(shù),最后用二進制將b表示成c。這種轉(zhuǎn)換方法在可以接受精度損失的前提下,有可能提高運算效率。然而,一般而言,定點數(shù)的數(shù)值范圍有限,要求的處理硬件比較簡單。

精度的定義

精度是一個衡量測量結(jié)果與真實值接近程度的概念,它反映的是誤差的大小。如果誤差小,則精度高;反之,如果誤差大,則精度低。在計算機科學(xué)中,精度也用于表示數(shù)值的最小度量單位,例如,GPS的精度為0.1m,表示這個GPS最小能識別0.1m的位置差異。同時,精度還被用來描述計算機中小數(shù)點前后的總位數(shù),如單精度和雙精度分別表示精確到小數(shù)點后幾位。然而,需要注意的是,儀器的精度并不能完全反映其準(zhǔn)確度。

Oracle 分為NUMBER和浮點數(shù)

NUMBER

NUMBER數(shù)據(jù)類型用于存儲可能為負(fù)值或正值的數(shù)值。

數(shù)據(jù)類型存儲定點數(shù)和浮點數(shù)。精度 38 位有效數(shù)字。

NUMBER(p, s):

  • 用于存儲數(shù)字值,其中p表示精度(最多38位),s表示小數(shù)位數(shù)取值范圍為[-84~127],當(dāng)s取負(fù)數(shù)時,將小數(shù)點左邊的s位置為0,并四舍五入。
  • 當(dāng)小數(shù)位數(shù)大于s時,采用四舍五入的方式。當(dāng)整數(shù)部分的長度大于p-s時,報錯。
  • 需要22個字節(jié)的存儲空間。

Oracle FLOAT數(shù)據(jù)類型是NUMBER數(shù)據(jù)類型的子類型。FLOAT(b):用于存儲浮點數(shù),范圍從-1.79E+308到1.79E+308。FLOAT的最大精度是126。二進制精度的最大126位數(shù),大致等于十進制數(shù)位數(shù)的38位數(shù)。

![外鏈圖片轉(zhuǎn)存失敗,源站可能有防盜鏈機制,建議將圖片保存下來直接上傳](https://img-home.csdnimg.cn/images/20230724024159.png?origin_url=C%3A%5CUsers%5CSU%5CAppData%5CRoaming%5CTypora%5Ctypora-user-images%5Cimage-20231216162440409.png&pos_id=img-BPi20wT4-1702955220839)C:\Users\SU\AppData\Roaming\Typora\typora-user-images\image-20231216162440409.png

浮點數(shù)

BINARY_FLOAT 數(shù)據(jù)類型

BINARY_FLOAT是 32 位單精度浮點數(shù)數(shù)據(jù)類型。每個值需要 5 個字節(jié),包括一個長度字節(jié)。BINARY_FLOAT

BINARY_DOUBLE 數(shù)據(jù)類型

BINARY_DOUBLE是 64 位雙精度浮點數(shù)數(shù)據(jù)類型。每個值需要 9 個字節(jié),包括一個長度字節(jié)。BINARY_DOUBLE

create table t2 (a binary_float,b binary_double);
insert into t2 values (3.141592653589,3.141592653589);
insert into t2 values (1023.141592653589,1023.141592653589);
insert into t2 values (1023.14159265358933333333,1023.14159265358933333333);

gbase 8s 分精確數(shù)值數(shù)據(jù)類型,近似數(shù)值數(shù)據(jù)類型

精確數(shù)值數(shù)據(jù)類型

外鏈圖片轉(zhuǎn)存失敗,源站可能有防盜鏈機制,建議將圖片保存下來直接上傳

gbase應(yīng)該是32位最長,oracle是38位

近似數(shù)值數(shù)據(jù)類型

  • smallfloat:8位有效數(shù)字的單精度浮點數(shù)值
  • float/double:16位有效數(shù)字的雙精度浮點數(shù)值。

建表時,在數(shù)據(jù)類型聲明中接受precision參數(shù),但是該參數(shù)對數(shù)據(jù)庫服務(wù)器存儲的值的實際精度不起作用。

create table t1 (a float,b smallfloat);
desc t1;
insert into t1 values (3.14,3.14);
insert into t1 values (3.1415926,3.1415926);
insert into t1 values (3.141592653589,3.141592653589);
insert into t1 values (1023.141592653589,1023.141592653589);
insert into t1 values (1023.14159265358933333333,1023.14159265358933333333);
select * from t1;

可以看出 smallfloat超過8位有效數(shù)字會截斷

外鏈圖片轉(zhuǎn)存失敗,源站可能有防盜鏈機制,建議將圖片保存下來直接上傳

可以看出指定該參數(shù)對數(shù)據(jù)庫服務(wù)器存儲的值的實際精度不起作用。

查看計算后小數(shù)位數(shù)是decimal類型

總結(jié)

到此這篇關(guān)于oracle與gbase8s遷移數(shù)據(jù)類型對照以及舉例說明的文章就介紹到這了,更多相關(guān)oracle與gbase8s遷移數(shù)據(jù)類型內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • 使用sqlplus命令行工具為oracle創(chuàng)建用戶和表空間

    使用sqlplus命令行工具為oracle創(chuàng)建用戶和表空間

    這篇文章主要介紹了使用sqlplus為oracle創(chuàng)建用戶和表空間的方法,本文介紹的是使用Oracle 9i所帶的命令行工具:SQLPLUS,需要的朋友可以參考下
    2017-11-11
  • [Oracle] 解析在沒有備份的情況下undo損壞怎么辦

    [Oracle] 解析在沒有備份的情況下undo損壞怎么辦

    Oracle在運行中很不幸遇到undo損壞,當(dāng)然最好的方法是完全恢復(fù),但如果是在沒有備份的情況下undo損壞怎么辦?以下就為大家介紹出現(xiàn)這種情況的解決辦法,需要的朋友參考下
    2013-07-07
  • Oracle中的高效SQL編寫PARALLEL解析

    Oracle中的高效SQL編寫PARALLEL解析

    這篇文章主要介紹了Oracle中的高效SQL編寫PARALLEL解析,在Oracle中,PARALLEL(并行)方式最大化調(diào)用計算機資源來成倍提高數(shù)據(jù)分析效率,這個在Oracle 9i之后的版本可以使用,需要的朋友可以參考下
    2023-07-07
  • Oracle 存儲過程加密方法

    Oracle 存儲過程加密方法

    Oracle 存儲過程加密方法,需要的朋友可以參考下。
    2009-10-10
  • 在ORACLE移動數(shù)據(jù)庫文件

    在ORACLE移動數(shù)據(jù)庫文件

    在ORACLE移動數(shù)據(jù)庫文件...
    2007-03-03
  • Oracle內(nèi)存分配不足的過程解析(業(yè)務(wù)干掛數(shù)據(jù)庫)

    Oracle內(nèi)存分配不足的過程解析(業(yè)務(wù)干掛數(shù)據(jù)庫)

    本文介紹了Oracle數(shù)據(jù)庫內(nèi)存分配不足的問題,原因主要是業(yè)務(wù)劇增導(dǎo)致的內(nèi)存不足,通過分析AAS負(fù)載、等待事件、transactions和阻塞情況,發(fā)現(xiàn)PGA內(nèi)存出現(xiàn)了嚴(yán)重抖動,感興趣的朋友一起看看吧
    2025-02-02
  • 在Oracle 8x實現(xiàn)自動斷開后再連接

    在Oracle 8x實現(xiàn)自動斷開后再連接

    在Oracle 8x實現(xiàn)自動斷開后再連接...
    2007-03-03
  • oracle索引的測試實例代碼

    oracle索引的測試實例代碼

    這篇文章主要給大家介紹了關(guān)于oracle索引測試的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2021-01-01
  • Oracle數(shù)據(jù)庫失效對象處理詳情

    Oracle數(shù)據(jù)庫失效對象處理詳情

    這篇文章主要介紹了Oracle數(shù)據(jù)庫失效對象處理,數(shù)據(jù)庫業(yè)務(wù)用戶(非 SYS/Public)下存在失效對象。對失效對象進行分析,主要包括失效的視圖、物化視圖、函數(shù)、包、觸發(fā)器等,下面帶著些許了解一起深入學(xué)習(xí)下面文章學(xué)習(xí)內(nèi)容吧
    2021-10-10
  • oracle 監(jiān)聽 lsnrctl 命令 (推薦)

    oracle 監(jiān)聽 lsnrctl 命令 (推薦)

    這篇文章主要介紹了oracle 監(jiān)聽 lsnrctl 命令 ,非常不錯,具有參考借鑒價值,需要的朋友可以參考下
    2017-03-03

最新評論