- 變量的類型
Kettle 的早期版本中的變量只有系統(tǒng)環(huán)境變量
目前版本中(3.1) 變量包括系統(tǒng)環(huán)境變量, "Kettle變量" 和內(nèi)部變量三種
系統(tǒng)環(huán)境變量的影響范圍很廣,凡是在一個 JVM下運行的線程都受其影響.
Kettle 變量限制了變量的作用范圍, 變量范圍包括三種分別是 grand-parent job, parent job, root job
內(nèi)部變量: 是 kettle 內(nèi)置的一些變量, 主要是kettle 運行時依賴的環(huán)境, 如轉(zhuǎn)換文件名稱, 轉(zhuǎn)換路徑,ip地址, kettle 版本號等等.
- 變量的設(shè)置
"系統(tǒng)環(huán)境變量" 有三種設(shè)置方式
- 通過命令行 -D 參數(shù)
- 屬性文件 kettle.property 中設(shè)置, 該屬性文件位于 ${user.home}.kettle 下
- 通過設(shè)置環(huán)境變量步驟 (Set Variable) 設(shè)置.
"Kettle 變量" 只能通過設(shè)置環(huán)境變量 (Set Variable) 步驟設(shè)置,同時設(shè)置變量的作用范圍.
"內(nèi)部變量" 是預(yù)置的無須設(shè)置.
- 變量的使用
無論哪種類型的變量在使用上都是一樣的, 有兩種方式
- 通過 %%var%% 或 ${var} 來引用, 這個引用可以用在 SQL 語句中, 也可以用在允許變量輸入的輸入框里.
- 通過獲取變量 (Get Variable) 步驟來使用
命令行參數(shù):
- 設(shè)置: 命令行參數(shù)通過獲取系統(tǒng)信息(Get System Info) 步驟設(shè)置, 在使用時可以像列名一樣來使用,不必像變量一樣要通過 ${var} 這樣的格式引用. 用戶最多可以設(shè)置10個命令行參數(shù)
- 傳遞: 命令行下使用
pan /file:xxx.ktr arg1 arg2 來傳遞參數(shù).
圖形界面下,每次運行時有要求輸入?yún)?shù)的提示窗口.