private List<String> getExportedKeys(String tableName) throws DataAccessException
	{
		List<String> exportedKeys = new ArrayList<String>();
		try
		{
			if (con.isClosed())
				con = ConnectionManager.getConnection(url, driver, prop);
			ResultSet rs = null;
			rs = con.getMetaData().getExportedKeys(getCatalog(), getSchemaName(), tableName);
			while (rs.next())
			{
				String pkColumnName = rs.getString("PKCOLUMN_NAME");
				if (!exportedKeys.contains(pkColumnName))
					exportedKeys.add(pkColumnName);
			}
			Set<String> eKeys = exportedKeysMap.get(tableName);
			if (eKeys != null)
			{
				for (String eKeyCol : eKeys)
				{
					if (!exportedKeys.contains(eKeyCol))
						exportedKeys.add(eKeyCol);
				}
			}
		}
		catch (SQLException e)
		{
			throw new DataAccessException(ErrorCode.ERR_GET_CONNECTION_METADATA, e, log);
		}
		if (exportedKeys.size() > 0)
			return exportedKeys;
		return null;
	}