Ver Mensaje Individual
  #6 (permalink)  
Antiguo 11/04/2008, 05:30
Avatar de gnzsoloyo
gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 16 años, 5 meses
Puntos: 2658
Re: Asignar Variable A Una Consulta Sql

1. Estás tratando de obtener UN valor usando un conector ADO DB, que está generado para devolver una tabla o un registro. Esto es así porque usas un adaptador y el adqapador relaciona el dataset o el datatable con un origen de datos...
2. Si lo que tu quieres es el dato, no actualizarlo, o releerlo, sino el dato puro, lo que debes usar es SQL direcxto por medio de SqlCommand, siendo este objeto de la clase específica (de esser posible) de la base de datos que estés usando.
3. Los objetos SqlCommand (SqlCommand, OdbcCommand, OracleCommand, SqlLiteCommand, MysqlCommand, etc.), poseen un método denominado ExecuteReader cuyo fin es devolver un valor determinado cuando la sentencia SQL devuelve un y sólo un campo o valor. Así, una secuencia a aproximada sería:
Código:
Dim cxn as OdbcConnection(strConexion)
cxn.Open
Dim sSql as OdbcCommand("select max(codigo)from miTabla",cxn)
Dim valor as integer = sSql.ExecuteReader()
El uso de ExecuteNonQuery, devuelve el número de registros afectados, su ID o -1 si no se pudo realizar.
Usar cualquiera de los métodos de un XxxxCommand, implica controlar también las Exceptions que puedan producirse, ya que las mismas no serán absorbidas por el ADO.