3
我正在使用PL/SQL Developer完美連接到Oracle數據庫。我試圖從我的java代碼訪問數據庫。之後,我收到了來自PL/SQL Developer的這個錯誤「ORA-12154 TNS:無法解析」我仍然可以從我的代碼訪問數據庫和查詢。使用Oracle,突然收到ORA-12154 TNS:無法解析消息
我已經閱讀了有關此錯誤的建議解決方案,但由於我在Windows和數據庫服務器上使用的權限有限的瘦客戶機(我只能查詢它!!),所以無法使用它們。
我很感激任何解決此問題的建議。
我也很好奇這個問題的原因,因爲在我運行我的代碼之前一切都很好;這與連接到數據庫和查詢我有權限的一個視圖一樣簡單! 請注意,其他瘦客戶端上的其他用戶也無法與PL/SQL Developer連接。 我的代碼如下:
public static void main(String[] args) throws IOException {
// TODO code application logic here
Logger logger = Logger.getLogger("MyLog");
FileHandler fh;
fh = new FileHandler("C:/Users/batam/Documents/MyLogFile.log");
logger.addHandler(fh);
SimpleFormatter formatter = new SimpleFormatter();
fh.setFormatter(formatter);
Class.forName("oracle.jdbc.driver.OracleDriver");
Connection connection = null;
try {
connection = DriverManager.getConnection(
"jdbc:oracle:thin:@capmtr10:1521/FINDATA1", "bamat",
"fg_3002");
} catch (SQLException e) {
e.printStackTrace();
return;
}
if (connection != null) {
try {
String sql = "select a.userid, a.Description from USER_FINANCE a where a.userid = 'batam'";
Statement stmt = connection.createStatement();
ResultSet rs = stmt.executeQuery(sql);
while (rs.next()) {
String id = rs.getString("userid");
String name = rs.getString("Description");
logger.info("Selecteds are : " + id + " : " + name);
}
rs.close();
stmt.close();
} catch (SQLException e) {
logger.info("SQLException : " + e.getMessage());
} finally {
try {
connection.close();
} catch (SQLException ex) {
Logger.getLogger(IFS.class.getName()).log(Level.SEVERE, null, ex);
logger.info("Close Exception : " + ex.getMessage());
}
}
} else {
System.out.println("Failed to make connection!");
logger.info("Failed to make connection!");
}
}
我一直在使用system_context功能我的瘦客戶機上檢索到的服務器主機名和服務名稱從PL/SQL開發人員,而它仍然沒有這個錯誤連接。
預先感謝您。
向我們展示導致異常的代碼。 –
PL/SQL不是訪問Oracle的工具。你使用的工具的真名是什麼? PL/SQL Developer? SQLPLUS? SQL Developer?蟾蜍? – Codo
你在Java中使用什麼連接字符串?您在其他工具中指定了哪些連接設置? – Codo