05 julio 2010

SQLite, C# y DataGridView


Hemos visto cómo mostrar datos de una base de datos de SQLite desde C#, tanto desde consola como usando Windows Forms y componentes básicos como los TextBox y los ListView.

Si nos basta con una "cuadrícula" similar a las de las hojas de cálculo, en la que podamos modificar y añadir datos, hay una forma muy sencilla de conseguirlo: desde el editor visual añadimos un DataGridView a nuestro formulario y conectarlo a nuestra tabla usando un SQLiteDataAdapter, un DataSet y un DataTable.

La apariencia sería esta


Y el fuente sería básicamente el mismo que el anterior, pero la función encargada de actualizar la lista de ciudades quedaría así:




 1: private void ActualizarListaCiudades()
2: {
3: conexion =

4: new SQLiteConnection
5: ("Data Source=personal.sqlite;Version=3;New=False;Compress=True;");
6: conexion.Open();

7:
8: // Lanzamos la consulta y preparamos la estructura para leer datos
9:
string consulta = "select * from ciudad";
10:

11: // Adaptador de datos, DataSet y tabla
12:
SQLiteDataAdapter db = new SQLiteDataAdapter(consulta, conexion);

13: DataSet ds = new DataSet();
14: ds.Reset();

15: DataTable dt = new DataTable();
16: db.Fill(ds);

17:
18: //Asigna al DataTable la primer tabla (ciudades)
19:
// y la mostramos en el DataGridView
20:
dt = ds.Tables[0];

21: dataGridView1.DataSource = dt;
22:
23: // Y ya podemos cerrar la conexion
24:
conexion.Close();

25: }

2 comentarios:

jeissoni dijo...

Muchas gracias por el ejemplo, pero tengo una pregunta; la verdad es que no he podido utilizar sqlite en una arquitectura de 64 bits, no se cuales librerías son las indicadas para poder desarrollar bajo arquitectura

Nacho Cabanes dijo...

Dependerá del entorno de desarrollo que uses. Con Visual Studio 2010 o superior debería bastar con que crees un proyecto nuevo e incluyas en él la DLL (añadiendola a las "referencias" del proyecto)