public void populateEntry(Connection conn, String catalog, String schema, String entryName) {
		ResultSet rset = null;
		
		// If the details are already present, do nothing
		if (entries.containsKey(entryName)) {
			return;
		}
		SqlToolkit.appLogger.logDebug("DbStructure.populateEntry: " + entryName);

		// Retrieve the details for the given entry
		List<Map<String,String>> detailList = new ArrayList<Map<String,String>>(10);
		try {
			rset = getColumns(conn, catalog, schema, entryName);
			ResultSetMetaData rsmd = rset.getMetaData();
			
			// Don't bother retrieving the column data if already present
			if (columns.length == 0) {
				int colCnt = rsmd.getColumnCount();
				columns = new String[colCnt];
				for (int i=0;  i<colCnt;  i++) {
					columns[i] = rsmd.getColumnName(i+1);
				}
			}
			
			// Get all column data for this entry
			while (rset.next()) {
				HashMap<String,String> hmTemp = new HashMap<String,String>();
				for (int i=0;  i<columns.length;  i++) {
					String key = columns[i];
					String val = rset.getString(key);
					hmTemp.put(key, val);
				}
				detailList.add(hmTemp);
			}
			entries.put(entryName, detailList);
		} catch (SQLException sqlex) {
			System.out.println("DbStruct.II.EX: " + sqlex);
			SqlToolkit.appLogger.logFatal("DbStructure.populateEntry.EX: " + sqlex);
		} finally {
			try { if (rset != null) rset.close(); } catch (Exception ex) { }
		}
	}