public void executeQuery(String query) {
		boolean notRows = true;
		if (connection == null || statement == null) {
			System.err.println("There is no database to execute the query.");
			return;
		}
		try {
			/*gavarela: Innecesrio que imprima en la consola de Java
                    System.out.println("JDBCAdapter: Procesando consulta");*/
			resultSet = statement.executeQuery(query);
			/*gavarela: Innecesrio que imprima en la consola de Java
                        System.out.println("JDBCAdapter: Consulta obtenida");*/
			metaData = resultSet.getMetaData();

			int numberOfColumns = metaData.getColumnCount();
			columnNames = new String[numberOfColumns];
			// Get the column names and cache them.
			// Then we can close the connection.
			for (int column = 0; column < numberOfColumns; column++) {
				columnNames[column] = metaData.getColumnLabel(column + 1);
			}

			// Get all rows.
			rows = new Vector<Vector>();
			/*gavarela: Innecesrio que imprima en la consola de Java
                        System.out.println("JDBCAdapter: Construyendo DataModel");*/
			while (resultSet.next()) {
				Vector<String> newRow = new Vector<String>();
				for (int i = 0; i < numberOfColumns; i++) {
					newRow.addElement(resultSet.getString(i + 1));
				}
				rows.addElement(newRow);
				notRows = false;
			}
			/*gavarela: Innecesrio que imprima en la consola de Java
                        System.out.println("JDBCAdapter: DataModel creado");*/
			if (notRows) {
				Vector<String> newRow = new Vector<String>();
				for (int i = 0; i < numberOfColumns; i++) {
					newRow.addElement("");
				}
				rows.addElement(newRow);
			}
			// close(); Need to copy the metaData, bug in jdbc:odbc driver.
			fireTableChanged(null); // Tell the listeners a new table has
									// arrived.
		} catch (SQLException ex) {
			ex.printStackTrace();
		}
	}