BTEQコマンドを利用したSQLのスケジュール実行方法
普段、TeradataStudioを使用してTableauで可視化するデータの抽出を日々行っています。SQLもまだまだ初心者で日々ネット検索とChatGPTに頼りっぱなしです。
それにしてもTeradataの日本語情報って少なすぎではありませんか? なので調べた事を忘れないように残しておこうと思います。
今回は、作成したSQLをBTEQコマンド、Windowsのタスクスケジューラーを
使用してスケジュール実行するための手順を説明します。
1.スケジュール実行までの流れ
スケジュール実行には、「BTEQ」コマンドというものを使用して
以下の3つのステップで行います。
Step1:BTEQスクリプトの作成
Step2:バッチファイルの作成
Step3:タスクスケジューラーの設定
2.BTEQコマンド
BTEQコマンドとは?
BTEQとは、Teradata DatabaseへSQLクエリーを送信するCUIプログラムで
Basic Teradata QueryでBTEQです。
公式ドキュメント
3.手順
Step1:BTEQスクリプトの作成
1.テキストエディタを開き、SQLクエリを含むBTEQスクリプトを作成します。
2.ログオン情報、実行したいSQLクエリ、ログオフのコマンドを記述します。
【構文】
⑤の部分に実行したいSQLクエリを記載します。
【コピペ用】
.LOGON mydatabase/myuser,mypassword;
DATABASE mydbname;
SELECT * FROM mytable;
.LOGOFF;
.QUIT;
3.記載したテキストファイルをmyquery.bteqのような名前で保存します。
Step2:バッチファイルの作成
1.テキストエディタを開き、バッチファイルを作成します。
2.BTEQコマンドを記述します。
※パスは環境に合わせて変更してください
【コピペ用】
@echo off
cd "C:\Program Files\Teradata\Client\17.20\bin"
bteq < “C:\Users\ユーザー名\TEST\myquery.bteq" >
"C:\Users\ユーザー名\TEST\output.txt"
3.記載したテキストファイルをrun_query.batのような名前で保存します。
Step3:タスクスケジューラーの設定
あとは、Windowsのタスクスケジューラーを使用してStep2で作成したバッチファイルの実行を設定します。
以上で、スケジュール設定ができます。
VantageAnalystも使用しているのでそちらではワークフローのスケジュール実行設定までができるので、調べて試しただけで実際の仕事では使用していませんが、備忘録として残しておきます。