Erro HyperSQL “usuário não possui privilégio ou objeto não encontrado” quando o Java acessa sua tabela

0

Eu criei um arquivo HSQLDB usando o LibreOffice Base 4.4.7.2. Na Ferramenta > Opção > Avançado, o caminho da classe JRE é definido como meu JDK 1.7.0_80 & está selecionado. O banco de dados contém uma tabela denominada TABLE1.

No Eclipse IDE, adicionei o hsqldb.jar (versão 2.3.4 baixada do hsql.org) para "Bibliotecas referenciadas" em Java Build Path. Aqui estão os códigos para acessar o arquivo com o JDBC:

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;

public static void main(String[] args) {
       Connection conn = null;
        try {
            Class.forName("org.hsqldb.jdbc.JDBCDriver");                
            String url = "jdbc:hsqldb:file:C:/mydb.odb;default_schema=true";
            conn = DriverManager.getConnection(url, "SA", "");

        System.out.println("Connection to Hypersql has been established.");

        Statement stmt = conn.createStatement();

        ResultSet rs = stmt.executeQuery("SELECT * FROM TABLE1");
        rs.close();            

    } catch (SQLException e) {
        System.out.println(e.getMessage());
    } finally {
        try {
            if (conn != null) {
                conn.close();
            }
        } catch (SQLException ex) {
            System.out.println(ex.getMessage());
        }
    }
}

Quando é executado até o executeQuery, o SQLException "usuário não possui privilégio ou objeto não encontrado: TABLE1" foi lançado. O que há de errado?

    
por len 10.09.2018 / 16:55

0 respostas