java - Unable to drop table via Jackcess using getSystemTable and findFirstRow -


why can't cursor findfirstrow when try use jackcess find row need delete in order drop table?

private static void deletetable(database db, string tablename) throws ioexception {     table table = db.getsystemtable(tablename);     if (table == null) {         return;     }     cursor cursor = table.getdefaultcursor();     map<string, object> criteria = new hashmap<string, object>();     criteria.put("name", tablename);     criteria.put("type", (short) 1);     if (cursor.findfirstrow(criteria)) {         table.deleterow(cursor.getcurrentrow());         log.e(tag, "delete " + tablename + "   success!");     } else {         log.e(tag, "can't find table");//run here     }     db.flush();     db.close(); } 

p.s.: no reported exception

your mistake opening table want delete, not system table holds list of database objects. instead of

table table = db.getsystemtable(tablename); 

you need use

table table = db.getsystemtable("msysobjects"); 

Comments

Popular posts from this blog

javascript - How to get current YouTube IDs via iMacros? -

c# - Maintaining a program folder in program files out of date? -

emulation - Android map show my location didn't work -