UNIDAD 5: INTRODUCION A LAS BASES DE DATOS

TEMA 7: CONSULTA O DESPLIEGUE O SELECCION

Existen una serie de operaciones y procesos que son muy comunes contra una tabla en una base de datos en disco la mas comun es desplegar todos los renglones de la tabla que estan almacenados en disco, a este proceso le llamaremos SELECCION, consulta o despliegue (muy original).

Como se indico anteriormente la comunicación con la base de datos se tendran que dar usando el lenguaje especializado de bases de datos llamado SQL(structured query language), la instrucción sql que se usa para resolver este problema tiene el siguiente formato:

SELECT [listacampos, * o ALL] FROM TABLA;

Tambien es importante recordar que de las cuatro operaciones basicas de SQL ( ya leyeron el tutorial ) SELECT, INSERT, UPDATE y DELETE sus formato INSTSQL * FROM TABLA; afectara a todos los renglones de la tabla.

El procedimiento que se intenta seguir cuando se construya un programa asp.net que tenga que manipular una tabla en disco debera seguir los siguientes pasos:


1.- Crear una conección o enlace a la base de datos.

2.- Abrir la conección a la base de datos.

3.- Crear un COMMAND o ADAPTER y cargarlo con la instruccion sql.

4.- Crear el dataset y cargarlo a travez del adapter o del command.

5.- Cargar el DataGrid con el dataset y enlazarlo(binding)

6.- Procesar el datagrid (editar un renglon, agregar un renglon, modificar un renglon, etc)

7.- Cerrar la conección


Codigo prog

private void button1_Click(object sender, System.EventArgs e)
{
// declarando objetos coneccion, adapter y dataset globales
OleDbConnection CANAL;
OleDbDataAdapter ORDEN;
DataSet TABLA;
// creando y enlazando coneccion a la base de datos
CANAL = new OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;Data
Source=c:\\prog1\\mibase.mdb");
// recordar espacion en balanco en DATA SOURCE=
// creando y cargando el adapter con la instruccion sql
ORDEN = new OleDbDataAdapter("select * from mitabla", CANAL);
// creando y cargando el dataset
TABLA= new DataSet();
ORDEN.Fill(TABLA, "mitabla");
// cargando y enlazando el datagrid
TABLAGRID.DataSource=TABLA;
TABLAGRID.DataMember="mitabla";
}

corrida

{:csharp_builder:Image169.jpg}}

notas:

1.- Se sigue el procedimiento generico para procesar tablas usando ADO.NET

2.- Observar y siempre incluir los namespaces indicados AGREGAR EL using System.Data.OleDb;. en la parte de using arriba dentro del WinForm.CS

3.- Se usa un objeto button=desplegar con este codigo cargado en su evento onclick.

4.- Recordar que DATAGRID es un WinFORM por tanto hay que crearlo e inicializarlo al principio del programa, tambien recordar que datagrid tiene muchas propiedades que le mejoran la interfase con que se despliega y es en esta parte donde se cargan dichas propiedades.

5.- Se empieza creando las variables globales a ocupar y abriendo la conección a la base de datos, si se les hace muy grande la string del provedor, pueden cargarla primero en una variable string y carguen la string en el constructor de la conección, pero esto es opcional.

5.1) Recordar que hay otros provedores de bases de datos para cuando se quieran accesar bases de datos diferentes de access.

6.- Tomar nota como se hace una referencia a la base de datos, esto es en c:\\prog1\\mibase.mdb ( ojo con las diagonales)

7.- Se crea el adapter y se carga el constructor con la instrucción sql y la coneccion, aqui es necesario entender que existen varias maneras de hacer esto:

Cargar una string con el sql y crear y usar un objeto command directamente por ejemplo objeto comand(stringsql); y luego todavia se tendria que ejecutar con executenonquery(que ejecuta una string que no regresa datos por ejemplo insert o update para un adapater) o executereader(si en lugar de usar adapter se usa un reader) o executescalar( metodo que regresa un solo dato de la base de datos)

Usar algunas de las funciones descritas del adapter por ejemplo adpatercommandselect(stringsql)

Pero lo mas sencillo fue usar el metodo que se puso en el programa, es decir crear el adapter y pasarle directamente la instrucción sql.

8.- Luego se creo el dataset y se cargo con toda la base de datos en disco, entender esto bien, dataset puede quedar cargado con todas las tablas que tenga la base de datos por eso se usa un FILL para pasar al dataset solo una de las tablas(mitabla), esto da origen a dos notas:

8.1.- Al programar mas adelante se ocupara explicitamente indicarle al compilador con cual tabla se va a trabajar, es por esta razón que se veran instrucciones tales como tabla.tables[“clientes”].etc.etc. aqui se esta diciendo al compilador que del dataset(TABLA) se va a realizar una proceso con la tabla de clientes.

8.2.- Para procesar dos o mas tablas, entonces se tendra que usar mucho el formato que se vio en la nota 8.1

9.- Al final se carga el datagrid, se enlaza al dataset y se cierra la base de datos.

TAREAS programacion sugeridos:

1.- construir y desplegar una primera base de datos que contenga la primera tabla que diseñarón en el tema de tablas.

2.- Construir una segunda base de datos que contenga cuando menos tres de las tablas ya diseñadas y desplegar cualquiera de ellas usando una una ventana de menu y ventanas para cada tabla, en menu el usuario selecciona cual quiere desplegar.

Politica de Privacidad