1. 程式人生 > >kettle環境變數的設定和獲取

kettle環境變數的設定和獲取

轉自http://www.cnblogs.com/jifeng/p/3400514.html

1. 變數的型別
Kettle 的早期版本中的變數只有系統環境變數
目前版本中(3.1) 變數包括系統環境變數, "Kettle變數" 和內部變數三種

系統環境變數的影響範圍很廣,凡是在一個 JVM下執行的執行緒都受其影響.

Kettle 變數限制了變數的作用範圍, 變數範圍包括三種分別是 grand-parent job, parent job, root job

內部變數: 是 kettle 內建的一些變數, 主要是kettle 執行時依賴的環境, 如轉換檔名稱, 轉換路徑,ip地址, kettle 版本號等等.

2. 變數的設定
"系統環境變數" 有三種設定方式
1) 通過命令列 -D 引數
2) 屬性檔案 kettle.property 中設定, 該屬性檔案位於 ${user.home}.kettle 下
3) 通過設定環境變數步驟 (Set Variable) 設定.

"Kettle 變數" 只能通過設定環境變數 (Set Variable) 步驟設定,同時設定變數的作用範圍.
"內部變數" 是預置的無須設定.

3. 變數的使用
無論哪種型別的變數在使用上都是一樣的, 有兩種方式
1) 通過 %%var%% 或 ${var} 來引用, 這個引用可以用在 SQL 語句中, 也可以用在允許變數輸入的輸入框裡.
2) 通過獲取變數 (Get Variable) 步驟來使用

命令列引數: 
1. 設定: 命令列引數通過獲取系統資訊(Get System Info) 步驟設定, 在使用時可以像列名一樣來使用,不必像變數一樣要通過 ${var} 這樣的格式引用. 使用者最多可以設定10個命令列引數
2. 傳遞: 命令列下使用 pan /file:xxx.ktr arg1 arg2 來傳遞引數.
圖形介面下,每次執行時有要求輸入引數的提示視窗.