Hay varias observaciones respecto a tu codigo :
- Abrir y cerra la conexion en el evento click del boton , es una mala practica.
- Concatenar las variables con la consulta , deja expuesta tu aplicacion a SQLInjection
has un replace de comillas por doble comillas asi " name = 'hello' ".replace("'","''") remplazas la comilla simple por dos comillas simples para que la consulta de sql no se cierre si introducen en tu textbox una comilla simple.
Para realizar consultas y prefieron usar las DataTables y lo hago de esta manera
//Esta funcion es para llenar una tabla
public static DataTable Fill(string Qry, string TableName = "Temp") {
DataTable TblResult = new DataTable(TableName); //Tabla para guardar el resultado!.
OleDbDataReader Reader;
_objCmd.CommandText = Qry;//Le pasamos la consulta, para poder extraer los datos
Reader = _objCmd.ExecuteReader();//Executamos la Qry
TblResult.Load(Reader, LoadOption.OverwriteChanges);//Llenamos los datos a la tabla
Reader.Close();//cerramos el datareader para que no se quede abierto
return TblResult;//Retornamos el datatable
}
Con este codigo es mas facil solo haria lo sig.
DataTable Tbl = new DataTable();
Tbl = Fill("Select * From TblUsuarios");
Ya para saber si tiene resultados
if(Tbl.Rows.Count > 0 ){
//Tiene Resultados
//Extraer el primer regitro de la tabla en base al index 0 y seguido del nombre de la columna.
var user = Tbl.Rows[0]["ColUsuario"];
var email = Tbl.Rows[0]["ColEmail"];
}
Aca te dejo el Link de un proyecto que estoy haciendo, con MsAccess y ADO.Net
Busca en el folder Clases la Clase Repository hay viene como realizo la conexion y como la cierro
y como realizo las consultas.