Curso ADO.NET con Mono y MySQL – Rellenando un DataSet

Posiblemente, leer hacia delante sea una opción muy interesante en algunas ocasiones… pero en otras muchas no lo será y tendremos que recurrir a los versátiles DataSet. Haremos un uso básico de los mismos en este ejemplo, porque como os he dicho ya sus posibilidades son realmente amplias. Insertaremos un nuevo concepto, el de la clase MySqlAdapter que será quien se encargue de rellenar el DataSet a través del comando que ejecute el SELECT.

Previamente deberemos incluir la referencia a nuestro proyecto para el ensamblado System.Data que lo encontraréis dentro del menú de referencias en la pestaña “Paquetes”. En el comienzo del fichero también deberéis rellenar su respectivo using System.Data.

Una vez hecho esto, para rellenar el DataSet sólo tendremos que hacer:

Leer más » 1 Comentario

Resultados valoración del Software Libre en 2011

Otro año más, somos colaboradores del informe sobre la “Valoración del Software Libre”. Os traigo, antes incluso que se les dé difusión de forma oficial por sus creadores, los resultados en varios formatos y un análisis personal mío.

Antes de nada los resultados:

Leer más » 1 Comentario

Lo mejor de mi RSS del 5 al 11 de diciembre

Leer más » 1 Comentario

Mostrar comentarios recientes en un widget con WordPress

Una de las características fundamentales que definen a un blog como tal, es la existencia de comentarios. Los visitantes del sitios se comunican con el autor y con otros visitantes. Gracias a ello se multiplica la información y en ocasiones, podríamos llegar a decir que el comentario supera a la entrada que comenta.

Como podéis ver, los comentarios son una pieza básica de los blogs y hay que cuidarlos. El fomento del diálogo en un sitio de este tipo es básico. ¿Cómo podemos mejorar este diálogo? Hay diferentes formas, pero debemos empezar por:

Esto segundo es justo lo que explicaremos cómo hacer. ¿Qué mejor para fomentar el diálogo que estar al tanto de lo último que se ha comentado? Hay varias alternativas para hacerlo con WordPress pero la que más me ha gustado por aspecto, funcionalidad y facilidad de uso es ésta que os cuento basada en el plugin WP-RecentComments.

Leer más » 5 Comentarios

Quitar contraseña a sudo. El superusuario sin password en Debian

Simple y sencillo, a través de las siguientes instrucciones podremos usar el comando sudo sin necesidad de especificar una contraseña para un usuario determinado, de esta forma, evitamos realizar el engorro de introducir repetidamente lo mismo.

Bien, vamos a ver cómo hacerlo. Abrimos un terminal:

ahornero@6581-D:~$ sudo visudo

Para comprenderlo mejor, análogo a lo anterior sería editar el siguiente fichero como superusuario:

ahornero@6581-D:~$ sudo nano /etc/sudoers

Bien, haciendo cualquiera de las dos opciones propuestas la primera opción propuesta***, estaremos dentro del fichero de los sudoers. Ahora añadimos la siguiente línea al final de éste:

usuario ALL=(ALL) NOPASSWD: ALL

Leer más » 28 Comentarios

Lista de proyectos participantes en el VI Concurso Universitario de Software Libre

Como medio colaborador que somos del VI Concurso Universitario de Software Libre, os iremos anunciando las novedades que vayan publicando la organización conforme el tiempo avance.

Logo Concurso Universitario Software Libre

En esta edición serán un total de 99 proyectos conformados por 140 estudiantes (os recomiendo mirar con atención la lista completa, hay ideas muy interesantes) cuyo avance podremos ver en directo, como todos los años desde el llamado Planet. A través de dicha lista tendréis acceso al código, blog y al RSS de cada uno de ellos. read more

Leer más » 1 Comentario

Lo mejor de mi RSS del 28 de noviembre al 4 de diciembre

Leer más » 1 Comentario

Extender el escritorio en XFCE desde el terminal

Muchos ya sabréis que dejé de usar Gnome con la llegada de la versión 3 y el “desastroso” Unity no tenía por donde cogerlo. Le di esa oportunidad de oro a XFCE, se ha comportado, aunque a veces tenga que buscar más de lo esperado la solución, que con otro escritorio solucionaría de una forma más directa.

Encuentro a XFCE muy liviano, rápido y sencillo, pero en ocasiones echo de menos algunos detalles. Este es el caso de extender el escritorio a otro monitor, desde el menú Display no se proporciona la opción, pero esto no deja de ser una GUI de XRandR, así que en dos líneas conseguiremos establecer nuestro escritorio extendindido.

Lanzamos este comando sin parámetros, de esta forma listaremos las salidas disponible y qué esta conectado, además de indicarnos lo que se encuentra habilitado y de qué manera:

ahornero@6581-D:~$ xrandr

Screen 0: minimum 320 x 200, current 1280 x 1024, maximum 8192 x 8192
LVDS1 connected 1280×800+0+0 (normal left inverted right x axis y axis) 331mm x 207mm
1280×800 60.0*+
1024×768 60.0
800×600 60.3 56.2
640×480 59.9
VGA1 connected 1280×1024+0+0 (normal left inverted right x axis y axis) 340mm x 270mm
1280×1024 75.0*+ 75.0 60.0
1024×768 75.1 70.1 60.0
832×624 74.6
800×600 72.2 75.0 60.3 56.2
640×480 72.8 75.0 66.7 60.0
720×400 70.1

Leer más » 6 Comentarios

Curso ADO.NET con Mono y MySQL – Primeras consultas

La clase que utilizaremos ahora será MySqlCommand y nuestra primera consulta, será una inserción sobre la base de datos. Insertaremos un registro más. La secuencia de pasos a efectuar es la siguiente:

  1. Creamos la consulta y la asignamos a una cadena
  2. Creamos el comando con la consulta que acabamos de crear
  3. Asignamos la conexión pertinente al comando
  4. Lo ejecutamos

Ampliando nuestro ejemplo, quedaría así:

public static void Main(string[] args)
{
	MySqlConnection conexion = new MySqlConnection();
	conexion.ConnectionString = "database=linuxhispano;
server=localhost;user id=root; pwd=contraseña";
	conexion.Open(); 

	try
	{
		string consulta = "INSERT INTO ejemplo (numero , tema)
 VALUES ('27', 'Sonido')";
		MySqlCommand comando = new MySqlCommand(consulta);
		comando.Connection = conexion;
		int resultado = comando.ExecuteNonQuery();
		Console.WriteLine("Filas afectadas : "
 + resultado.ToString());
	}
	catch(MySqlException exc)
	{
		Console.WriteLine("Ocurrió un error : " + exc.Message);
	}
	finally
	{
		conexion.Close();
	}
}

Como se puede apreciar, hemos cuidado que se finalice la conexión aunque existan errores, con finally y hemos controlado los posibles errores que aparezcan. En nuestro caso debería decir: “Filas afectadas: 1”, puesto que la inserción sólo realiza una.

Leer más » 2 Comentarios