1

我正在學習使用Pentaho勺子來開發ETL,我很漂亮。勺子 - 從txt文件讀取SQL代碼並在DB上執行

而不是將SQL操作存儲在其文件中,我想讓它們在自己的.sql文件中。它更容易跟蹤Subversion的變化,並且在需要的情況下,我可以在DB管理器上打開sql文件並直接執行它。

我該怎麼做?我想我可以使用某個組件將txt文件讀入一個變量,而另一個組件將該變量讀取並在數據庫上執行。

最簡單的方法是什麼?

+0

您是否看過作業級別的'SQL'步驟? –

回答

1

在標準SQL表格輸入中,您可以將查詢定義爲參數${my_query},並且必須在轉換屬性中定義此參數(不帶$ {...}裝飾):右鍵單擊任意位置,選擇屬性在彈出菜單中,參數選項卡。

每次運行轉換時,都會顯示參數列表,其中包含您可以覆蓋的my_query。

要自動化,請按照安裝zip附帶的示例進行操作。在與spoon.bat/spoon.sh相同的目錄中,有一個名爲sample的文件夾,其中您將找到一個jobread_all_filesread all_tables。基本上這個工作列出了一個目錄中的文件,並且每個文件都將它放入一個變量中,並將其用作參數來運行變換。比解釋要容易得多。 enter image description here