Está en la página 1de 2

VB2010-MYSQL-ACCEDIENDO A LOS RESULTADOS DE UNA CONSULTA

INTRODUCCIN Hay ocasiones que no deseamos asignar los resultados de una consulta SQL a algn componente de datos para su visualizacin, ms bien queremos tomar algn valor de la consulta para asignarla a alguna variable o realizar una posible operacin. PROCESO Bueno, la conexin sigue siendo igual, hay que declararla e inicializarla como ya lo expliqu anteriormente. En este caso nuestra conexin ser llamada conexion:

Tambin la parte de la consulta y el comando lo hacemos como sabemos. En este caso hemos creado una variable Consultaa como cadena de consulta y la variable ComandoODBC que contiene los datos de la consulta y la conexin:

Ahora viene el cambio para trabajar con esa consulta. Lo que debemos hacer es declarar una variable del tipo OdbcDataReader, que es la que contendr los datos como una matriz de valores, e inicializarla con el resultado del comando que declaramos, pero que en este caso ser ejecutado como ExecuteReader de la siguiente manera:

Donde la variable ResultadoSQL es la que nos servir para trabajar. En este caso la consulta consista en traer todos los datos de la tabla regions de la base hr y solamente tiene dos columnas. Por lo tanto ResultadoSQL debe contener la siguiente informacin.

Donde ResultadoSQL(0) contiene todos los valores de RegionID y ResutadoSQL(1) contiene todos los valores de RegionName. Si tuviera una tercera columna, su ndice sera (2) y as por cada columna regresada.

M. en I. Margarito Navarrete-Mendoza

VB2010-MYSQL-ACCEDIENDO A LOS RESULTADOS DE UNA CONSULTA

Para acceder al primer registro, debemos leer ResultadosSQL una vez de la siguiente manera:

Y si lo queremos asignar a dos variables (previamente declaradas como string) que contengan los datos lo hacemos as:

De esta manera RegionID contiene el primer elemento del arreglo en su campo (0) que es el valor de 1 y RegionNombre contiene el primer elemento del arreglo en su campo(1) que es el valor de Europe. Si queremos ahora que nuestras variables tomen los valores del segundo rengln, en este caso 2 y Americas, necesitamos nuevamente leer el ODBCDataReader como lo hicimos para acceder al primer registro.

Y ahora si asignamos nuevamente Resultado a nuestras variables, como ya lo habamos hecho, obtendremos un resultado distinto ya que apuntaremos al rengln dos de la matriz.

Como pueden notar, el proceso para leer cada rengln del arreglo, debemos ejecutar la sentencia ResultadoSQL.Read() para ir desplazndonos. En caso de que tengamos que leer todo el arreglo, lo podemos hacer en un ciclo while de la siguiente manera.

Obviamente, las variables RegionID y RegionNombre, contrendran los valores de los renglones correspondientes, dependiendo de la iteracin en que vaya el while hasta finalizar la consulta. En este caso el ciclo termina cuando ResultadoSQL.Read() no regresa algn valor.

M. en I. Margarito Navarrete-Mendoza

También podría gustarte