Oracle
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Oracle

Làm thế nào để xác minh sqlplus có thể kết nối?

Nhờ tài liệu tham khảo do @Kacper cung cấp, tôi có thể điều chỉnh sqlplus /nolog này với trường hợp của tôi; đây là ý tưởng:

  1. mở sqlplus chỉ mà không cần kết nối
  2. đặt một mã trả lại cụ thể trên SQLERROR - đây là những gì sẽ xảy ra khi connect thất bại
  3. mã trả lại có thể được thu thập như bình thường trong tập lệnh người gọi:

a.sh

sqlplus /nolog << EOF
 WHENEVER SQLERROR EXIT 50
 WHENEVER OSERROR EXIT 66
 connect /@${MISTERY_DB}
 exit;
EOF

Sau đó, cuộc gọi:

/ju $ export MISTERY_DB="eg_NON_EXISTING_DB"
/ju $ a.sh
SQL*Plus: Release 11.2.0.4.0 Production on Tue Nov 29 08:43:44 2016
Copyright (c) 1982, 2013, Oracle.  All rights reserved.
SQL> SQL> SQL> ERROR:
  ORA-12154: TNS:could not resolve the connect identifier specified
/ju $ echo $?
50

Cũng có liên quan: Kết nối với sqlplus trong một tập lệnh shell và chạy các tập lệnh SQL



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. 2 cách trả về hàng không chứa giá trị số trong Oracle

  2. oracle - cùng một truy vấn nhưng kế hoạch khác nhau ở 11g và 12g

  3. Giá trị trả về của oci_parse

  4. Ngoại lệ Java Oracle - số biểu thức tối đa trong danh sách là 1000

  5. Cách thêm chỉ báo Meridiem (AM / PM) vào giá trị thời gian trong Oracle