public void recoverWeights(WeightFactory factory) throws SQLException {
		try (Statement st = db.createStatement();
				ResultSet rs = st.executeQuery("SELECT all * FROM weighttable")) {
			double vals[] = new double[factory.getIDFSize() + factory.getTFSize() + 7];
			int numrows = 0;
			while (rs.next()) {
				int id = rs.getInt(1);
				double val = rs.getDouble(2);
				vals[id] = val;
				numrows += 1;
			}
			if (numrows != factory.getIDFSize() + factory.getTFSize() + 7) {
				throw new SQLException("weighttable has wrong number of rows");
			}

			factory.set(vals);
		}
	}
@param factory the weight factory
@throws SQLException if there is an error creating/executing the query
Ghidra/Features/BSim/src/main/java/ghidra/features/bsim/query/client/tables/WeightTable.java