쉘 스크립트에서 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

관련 정보