невозможно удалить таблицу в HSQLDB - PullRequest
1 голос
/ 03 июня 2011

Я не могу удалить таблицу с SA пользователя по умолчанию (или любым другим пользователем в этом отношении) в HSQLDB, хотя я могу создать таблицу и читать ее без проблем, пожалуйста, посмотрите мой код ниже, что не так?С другой стороны, если я использую сторонний клиент SQL (например, squirrel), я могу войти в систему и удалить таблицу без проблем, даже если пользователь пуст.

 public static void main(String[]args){
        try {

            DBManager.executeUpdate("drop table mytable");

        } catch (SQLException ex) {
           ex.printStackTrace();
        }
    }
    public static Connection getConnection(){
        Connection c =null;

         try {
            c = DriverManager.getConnection("jdbc:hsqldb:file:e:\\xxx_db\\xxx", "SA", "");


        } catch (SQLException ex) {
            ex.printStackTrace();
        }
        return c;
    }
    public static int executeUpdate(String s) throws SQLException {
        Connection con = getConnection();
        try{
            return con.createStatement().executeUpdate(s);
        }
        finally{
            if(con!=null)try {
                con.close();
            } catch (SQLException ex) {
                Logger.getLogger(DBManager.class.getName()).log(Level.SEVERE, null, ex);
            }
        }
    }

Ответы [ 2 ]

1 голос
/ 05 июня 2011

Оказывается, мне нужно сделать явное отключение назад

 DBManager.executeUpdate("shutdown");
0 голосов
/ 03 июня 2011

Попробуйте выполнить коммит после выполнения DDL.

...