シェルスクリプトでsqoop importコマンドを実行するときにteradataにデータベースがあるかどうかを確認する方法は?

シェルスクリプトでsqoop importコマンドを実行するときにteradataにデータベースがあるかどうかを確認する方法は?

シェルスクリプトから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

関連情報