Я пытаюсь подключить базу данных HANA с помощью кода Java, как следоватьSAP HANA имя недопустимой таблицы
try {
Class.forName("com.sap.db.jdbc.Driver");
String url = "jdbc:sap://host:30015/?";
String user = "myuser";
String password = "password";
System.out.println("try to connect to HANA !");
Connection cn = java.sql.DriverManager.getConnection(url, user, password);
System.out.println("Connection to HANA successful!");
ResultSet rs = cn.createStatement().executeQuery("select * from LIVE2.Connections");
rs.next();
System.out.println(rs.getInt(1));
} catch (Exception e) {
e.printStackTrace();
}
соединения установлено успешно. И следующее исключение возникает
com.sap.db.jdbc.exceptions.JDBCDriverException: SAP DBTech JDBC: [259] (at 20): invalid table name: Could not find table/view CONNECTIONS in schema LIVE2: line 1 col 21 (at pos 20)
at com.sap.db.jdbc.exceptions.SQLExceptionSapDB.createException(SQLExceptionSapDB.java:345)
at com.sap.db.jdbc.exceptions.SQLExceptionSapDB.generateDatabaseException(SQLExceptionSapDB.java:176)
at com.sap.db.jdbc.packet.ReplyPacket.buildExceptionChain(ReplyPacket.java:102)
at com.sap.db.jdbc.ConnectionSapDB.execute(ConnectionSapDB.java:1033)
at com.sap.db.jdbc.ConnectionSapDB.execute(ConnectionSapDB.java:823)
В то время, когда я подключаюсь с помощью студии hana, таблица Connections существует в схеме Live2.
Любое предложение, что не так?
Благодаря
ли HANA есть средства акций базы данных? Вы не указываете имя базы данных в строке jdbc, это означает, что вы находитесь на самом сервере. – thst
Shoud Мне нужно указать имя схемы в URL-адресе? Как я указываю в своем запросе. Я только что изменил строку подключения и заменил? отметьте LIVE2. Но такая же проблема –
Возможно, вы создали таблицу с использованием двойных кавычек, которая делает имена с учетом регистра в SQL: Попробуйте указать имена в вашем SQL-запросе: '" select * from \ "LIVE2 \". \ "Connections \" "' –