シェルスクリプトからsqoopインポートコマンドを実行しようとしています。期待通りにうまくいきます。
ただし、Teradataにデータベースがないと仮定するとエラーが発生し、スクリプトで追加のコマンドを実行しないでください。
構文が正しいため、sqoop importコマンドは「0」を返し、sqoop importコマンドは成功したと見なされます。
Teradataにデータベースがない場合でも、シェルスクリプトでこれらのエラーを処理する方法は?
答え1
これは、データベースおよび/またはテーブルが存在し、ロードを続行せずにbteqが1で終了したことを確認するのに役立ちます。
bteq << eof
select 1 from DBC.TablesV
where databasename = 'YOUR_DB';
--and TableName = 'YOUR_TABLE'; --Could add and table here.
.if activitycount = 0 then .quit 1
.quit 0
eof