Oracle
Step 1: 建立資料來源
您可以透過以下兩種操作來建立資料來源,第一種為點擊側欄 Data Source 的 “+” 按鈕,或是點擊 Overview 頁面中的 Create a Data Source 按鈕來建立。
Step 2: 設定連線資訊
在彈出的視窗表單中,填入及設定連線資訊,並點擊 Submit 送出
相關連線欄位設定細節如下方說明。
Basic
- Name:資料庫於 Canner Enterprise 之顯示名稱,後續可作修改。
- Data Source Type : 資料庫類型,請選擇
Oracle
。
Data Source Properties
URL:請填入資料庫 IP 位置,填寫格式為
<hostname>:<port>
。Username:請輸入連接此 Oracle 資料庫的使用者名稱。
Password:請輸入連接此 Oracle 資料庫的密碼。
Connect Type:選擇使用 Oracle 提供之
SID
或是SERVICE_NAME
方式連線。SID / Service Name:根據您選擇的 Connect Type,請填入對應的
SID
或SERVICE_NAME
。Case Sensitive:Canner Enterprise 資料來源中所連結之資料表(Table)名稱皆會統一格式為小寫顯示,不支援以大小寫區分。請在此選擇當連結時偵測到有多個資料表(Table)的名稱字元相同僅有大小寫差異時,該以何種方式處理。
One Only(預設選項)
:系統不支援多個資料表名稱字元相同但大小寫不同之狀況,因此送出連結資訊後系統會顯示連線錯誤。First Result
:系統會保留第一個掃描到的資料表,其餘相同名稱的資料表不會連至系統中。Lowercase First
:系統會保留第一個掃描到名稱為全小寫之資料表,其餘相同名稱的資料表不會連至系統中 (若沒有名稱為全小寫,則會保留第一個掃描到的資料表)。Uppercase First
:系統會保留第一個掃描到名稱為全大寫之資料表,其餘相同名稱的資料表不會連至系統中 (若沒有名稱為全大寫,則會保留第一個掃描到的資料表)。
範例:若您連結的資料庫中同時有名稱為 Table, table, TABLE 的三張資料表
1. 選擇 One Only - 送出連線後,系統顯示連線失敗。
2. 選擇 First Result - 保留連結 Table 資料表。
3. 選擇 Lowercase First - 保留連結 table 資料表。
4. 選擇 Uppercase First - 保留連結 TABLE 資料表。Table Pattern:可以透過填入 Java 正則表達式 (Java Regular Expression) 來指定僅連結部分符合規則的資料表(Table)。遇以下三種情境時,建議您可以設定此項目:
- 希望只連結特定規則的資料表至 Canner Enterprise 中。
- 針對同一個原始來源資料庫,您希望在 Canner Enterprise 中分為多個資料來源來連結管理。
- 您連結的資料庫中資料表數量超過系統限制,因此需要拆分為多個資料來源來連結管理。
以下提供三個 Table Pattern 填寫範例:
範例1:填入 ^p.*\..* ,系統會篩選並只連結以 p 開頭的 schema 底下所有資料表。
範例2:填入 public\..* ,系統會篩選並只連結以 public 開頭的 schema 底下所有資料表。
範例3:填入 (public\..*)|(testing\..*) ,系統會篩選並連結以 public 或 testing 開頭的 schema 底下所有資料表。
Canner Enterprise 資料來源中所連結之資料表名稱皆會統一格式為小寫顯示,不支援以大小寫區分,因此Table Pattern 亦只支援小寫條件,若您填寫的 Java 正則表達式含有大寫字元,系統會自動轉為小寫條件判斷。
- Join Pushdown (預設關閉):可設定將 SQL 中的 Join 條件下推至來源 Oracle 資料庫中執行 。
開啟 Join Pushdown 有機會增加 SQL 查詢運算表現,但需注意:
- 是否能有效增加 SQL 查詢運算表現會因使用者所下的 Join 條件內容而有所差異
- 相對設定關閉下,會使用到更多來源 Oracle 資料庫資源
建議您確認過以上兩點再決定是否開啟
Number rounding mode:若您在執行 SQL Query 時使用到此資料來源所連結的資料表,其中有數值欄位資料的小數點位數超過
Default Scale
時,選擇系統該以何種方式處理 (此資料庫Default Scale = 0
,因此此設定項為選擇若數值欄位中若出現小數點如何取整)。Unnecessary(預設選項)
: 系統會顯示 Query 失敗並提供錯誤訊息。Up
: 「遠離零的四捨五入」,將小數點進位到離零更遠的整數。Down
: 「靠近零的四捨五入」,將小數點捨去到離零更近的整數。Ceiling
: 「四捨五入向正無窮大方向」。Floor
: 「四捨五入向正無窮大方向」。Half Up
: 四捨五入至「最近的鄰近值」,除非兩個鄰近值都等距離,此時則向上進位。Half Down
: 四捨五入至「最近的鄰近值」,除非兩個鄰近值都等距離,此時則向下捨去。Half Even
: 四捨五入至「最近的鄰近值」,除非兩個鄰近值都等距離,此時則向偶數的鄰近值進位。
以下提供進位處理範例:
Input Number | UP | DOWN | CEILING | FLOOR | HALF_UP | HALF_DOWN | HALF_EVEN | UNNECESSARY |
---|---|---|---|---|---|---|---|---|
5.5 | 6 | 5 | 6 | 5 | 6 | 5 | 6 | throw ArithmeticException |
2.5 | 3 | 2 | 3 | 2 | 3 | 2 | 2 | throw ArithmeticException |
1.6 | 2 | 1 | 2 | 1 | 2 | 2 | 2 | throw ArithmeticException |
1.1 | 2 | 1 | 2 | 1 | 1 | 1 | 1 | throw ArithmeticException |
1.0 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 |
-1.0 | -1 | -1 | -1 | -1 | -1 | -1 | -1 | -1 |
-1.1 | -2 | -1 | -1 | -2 | -1 | -1 | -1 | throw ArithmeticException |
-1.6 | -2 | -1 | -1 | -2 | -2 | -2 | -2 | throw ArithmeticException |
-2.5 | -3 | -2 | -2 | -3 | -3 | -2 | -2 | throw ArithmeticException |
-5.5 | -6 | -5 | -5 | -6 | -6 | -5 | -6 | throw ArithmeticException |
- Default Scale:數值欄位中資料小數點處理到第幾位數,此資料庫預設為 0,即為取至整數。
- Explore Timeout:系統連結資料來源的逾時限制,若系統執行連結超過此時間,會自動終止並顯示連線錯誤。系統預設逾時限制為
60000 毫秒
,若您要連結的資料庫中資料表(Table) 數量較多,建議可調高此逾時限制。
Step 3: 完成建立
進行 Submit 後,稍後片刻將會在側欄中顯示 Oracle 的資料來源,點擊後可以進入此資料來源細節頁面。